当前位置: 首页 > news >正文

淘宝客优惠券网站怎么做手机端编程软件

淘宝客优惠券网站怎么做,手机端编程软件,微信网页版入口,北京网站建设排名Android-UI开发指南 Android Studio调试UI设计UI框架布局Layout文本框 android的活动Activity基本概念Activity的生命周期Activity栈创建Activity管理ActivityActivity间传递数据 FragmentAdapterRecyclerViewRecyclerView Adapter#xff08;适配器#xff09;事件setOnItem… Android-UI开发指南 Android Studio调试UI设计UI框架布局Layout文本框 android的活动Activity基本概念Activity的生命周期Activity栈创建Activity管理ActivityActivity间传递数据 FragmentAdapterRecyclerViewRecyclerView Adapter适配器事件setOnItemLongClickListener()方法 Android Studio调试 UI设计 UI框架 布局Layout 1.线性布局 LinearLayout 排列方式(orientation) 有横竖两种方向的水平和垂直 在xml文件中: android:orientationvertical // 垂直排列 android:orientationhorizontal // 水平排列在java代码中: linearLayout.setOrientation(LinearLayout.VERTICAL); // 设置垂直排列 linearLayout.setOrientation(LinearLayout.HORIZONTAL);// 设置水平排列这里需要注意 android:orientationvertical子View使用layout_gravity在垂直方向上的设定无效 android:orientationhorizontal子View使用layout_gravity在水平方向上的设定无效摆放位置(gravity/layout_gravity) gravity是针对当前 控件里面 内容 的摆放 如果是容器则针对的是容器里面子view的摆放 如果是控件则针对的是控件里面内容的摆放。 layout_gravity是指当前控件在 父控件里面 的摆放位置 不过需要注意的一点是父控件设置的gravity的级别要低于子控件设置的layout_gravity。 权重(layout_weight) layout_weight 在LinearLayout布局之中权重也是一个很重要的属性。简单来说就是按比例来分配控件占用父控件的大小。 若C-child表示子布局声明的大小B-blank表示剩余布局的大小P-percent表示子布局占据父布局剩余布局的比例则子布局最终的实际大小R-reality为 R C B * P我们来按照公式来计算 R C B * P 0dp (B-0dp-0dp) * (1/2) (1/2)B也就是父布局的1/2。 weightSum LinearLayout有一个权重数量的标记weightSum。 在LinearLayout中没有声明weightSum时 默认的就是各个控件权重的总和。 0dp与wrap_content 谷歌官方建议子布局的layout_width使用0dp来分比例显示布局 和wrap_content大同小异当使用layout_weight时都表示占据剩余宽度或高度的比重。 但两者有明显区别。 使用0dp时要考虑所分配的布局宽度是否小于控件实际宽度 B是剩余布局的大小 父布局大小 - 子控件大小之和 B C - (C C) -C; R C B * P C (-C) * (1/3) 2/3C 这里的C就是父布局的大小也就是match_parent。 三个属性都用来适应视图的 水平或 垂直大小 一个以视图的 内容或尺寸 为基础的 布局比 精确地指定视图范围更加方便。 1fill_parent 设置一个构件的布局为fill_parent将强制性地使构件扩展 以填充布局单元内尽可能多的空间。 这跟Windows控件的dockstyle属性大体一致。 设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。 2 wrap_content 设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。 以TextView和ImageView控件为例 设置为wrap_content将完整显示其内部的文本和图像。 布局元素将根据内容更改大小。 设置一个视图的尺寸为wrap_content大体等同于设置Windows控件的Autosize属性为True。 3match_parent Android2.2中match_parent和fill_parent是一个意思 . 两个参数意思一样match_parent更贴切 于是从2.2开始两个词都可以用。 那么如果考虑低版本的使用情况你就需要用fill_parent了 文本框 android的活动 Activity基本概念 Activity的生命周期 Activity栈 创建Activity 管理Activity Activity间传递数据 Fragment Adapter 负责将数据绑定到View上 RecyclerView RecyclerView是用于展示大量数据集合的高效控件 RecyclerView Adapter适配器 是Android开发中用于管理RecyclerView的重要组件之一。 主要完成以下几个任务 创建ViewHolder在RecyclerView中每个子项都需要一个ViewHolder来显示数据。Adapter负责创建和管理ViewHolder对象通常通过继承RecyclerView.Adapter类来实现自定义的Adapter并重写其中的方法。 绑定数据到ViewHolderAdapter中的onBindViewHolder()方法负责将数据与ViewHolder进行绑定。在该方法中您可以获取当前位置的数据并将其设置到ViewHolder的各个视图中。 定义Item视图类型如果RecyclerView中存在多个不同的Item视图类型Adapter可以通过重写getItemViewType()方法返回不同的视图类型以便RecyclerView能够正确渲染不同类型的子项。 确定子项数量Adapter需要实现getItemCount()方法来指定RecyclerView中子项的数量。 响应用户交互通过Adapter可以为RecyclerView的子项添加点击事件、长按事件等交互操作。 总之RecyclerView Adapter充当了RecyclerView与数据之间的桥梁负责将数据展示到RecyclerView中并处理与用户交互相关的操作。 事件 setOnItemLongClickListener()方法 LinearLayout mainLayout new LinearLayout(this);mainLayout.setOrientation(LinearLayout.VERTICAL);mainLayout.setBackgroundColor(0xFFF6F8FB);FrameLayout frameLayout new FrameLayout(this);frameLayout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,0,1));mainLayout.addView(frameLayout);LinearLayout tabLayout new LinearLayout(this);tabLayout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,dip2px(88)));tabLayout.setOrientation(LinearLayout.HORIZONTAL);tabLayout.setPadding(dip2px(15), 0, dip2px(15), dip2px(15));tabLayout.setBackgroundResource(R.drawable.sp_main_tab_n);mainLayout.addView(tabLayout);// 添加第一个TabFrameLayout tab1FrameLayout new FrameLayout(this);tab1FrameLayout.setLayoutParams(new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT,1));tabLayout.addView(tab1FrameLayout);LinearLayout tab1Layout new LinearLayout(this);tab1Layout.setId(R.id.tabLin5);tab1Layout.setLayoutParams(new LinearLayout.LayoutParams(dip2px(64),dip2px(56)));tab1Layout.setOrientation(LinearLayout.VERTICAL);tab1Layout.setGravity(Gravity.CENTER);tab1Layout.setBackgroundResource(R.drawable.sp_main_tab);tab1FrameLayout.addView(tab1Layout);ImageView tab1ImageView new ImageView(this);tab1ImageView.setId(R.id.iv5);tab1ImageView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT));tab1ImageView.setImageResource(R.drawable.sp_home_tab5);tab1Layout.addView(tab1ImageView);TextView tab1TextView new TextView(this);tab1TextView.setId(R.id.tv_tab5);tab1TextView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT));tab1TextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);tab1TextView.setGravity(Gravity.CENTER);tab1TextView.setTextColor(ContextCompat.getColor(this, R.color.s_main_tab_text));tab1TextView.setText(R.string.Contacts);tab1Layout.addView(tab1TextView);// 设置TabLayout置底显示LinearLayout.LayoutParams params (LinearLayout.LayoutParams) tabLayout.getLayoutParams();params.gravity Gravity.BOTTOM;tabLayout.setLayoutParams(params);// 添加其他Tab的代码类似省略setContentView(mainLayout);private int dip2px(float dpValue) {final float scale getResources().getDisplayMetrics().density;return (int) (dpValue * scale 0.5f);}
http://wiki.neutronadmin.com/news/84483/

相关文章:

  • weekly做网站南宁房产信息网
  • 织梦能不能做门户网站wordpress 积分充值
  • 企业设计个网站网站的内容有哪些内容
  • wordpress移动底部菜单插件郑州企业网站快速优化价格
  • 网站开发服务转包合同360浏览器网页版入口
  • 网站建设去哪里学外贸网站用什么字体
  • 手机百度关键词排名 网站优化软件厦门网站快速排名优化
  • 有没有哪个网站能够做简历云指建站平台
  • 大连网站建设 选领超科技济南广告设计公司前十名
  • 长春网站排名小程序商店开发
  • 汕头网站建设网站推广wordpress优化搜索
  • 做网站专题页需要注意什么绍兴h5建站
  • 网站后台密码忘了怎么办网站怎么做口碑
  • 手机可以做网站吗?哪个网站可以做自由行地图
  • 百姓网站制作专业团队的优势
  • 宣汉网站建设新手如何做外贸
  • 汽车金融网站怎么做东莞集团网站建设
  • 装潢公司网站设计与制作360推广做网站
  • 上海集团网站制作微信支付服务商平台
  • 网站建设维护培训会上的讲话别人做的网站怎么打开
  • 建设网站服务费会计分录东莞企业网页设计哪家好
  • 手机网站制作明细报价表环保公司网站架构怎么做
  • 如何 做网站挣钱可以在线制作简历的网站
  • 张家界做网站游戏类网页设计
  • 镇江网站关键词外贸网站产品分析
  • 关于销售网站建设的短文网站建设发展方向有哪些
  • 百度网站html验证关于网站建设的题目
  • 宜昌网站排名优化六安杂谈百姓畅言
  • 网站群建设存在的问题医院做网站需要去备案
  • 网站备案服务号江苏连云港网站设计公司