简单App开发之控件解析(长期更新)

1.图片加一行文字描述的控件:

TextView及其子类都具备drawTop,drawBottom,drawLeft,drawRight的属性,可以在XML直接配置,其子类包括EditextView和RadioGroup比较常用的,其中RadioGroup可以使用

button属性设置为@null去除默认的选择圆框.

直接的方式就是使用ImageView加TextView这种方式



2.弹框设计:

①有简单的对话框Dialog,这个也可以使用打气筒通过setView()方法将View设置到Dialog上面,自带的方法也能实现很多功能

②PopupWindow.注意很多时候是要给PopupWindow设置背景,否则可能导致看不见等问题

③使用WindowManager,加打气筒自定义

④使用spinner控件


3.ViewPager的使用:

①适配器一般继承PagerAdapter

//创建VIewPager适配器
class MyPager extends PagerAdapter {
@Override
public int getCount() {

//假如想要实现无线循环,设置一个constant常量很大的数可以
return constant;
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View)object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {

//例如设置一张图片
ImageView iv = new ImageView(MainActivity.this);
iv.setBackgroundResource(intR[position%4]);
container.addView(iv);
return iv;
}

②实现无线轮播

一般就是半getCount()方法的返回值设的很大,配合setCurrent()方法使用;或者对ViewPager设置监听,当到达最小位置时,设置下一张为最后一张,最大位置就设置第一张为下一张。

③实现自动轮播

自动轮播一般就是设置多长时间进行下一张,这就意味着需要一个类似定时器的功能,然后配setCurrent()方法实现自动轮播,简单的就是设置一个定时器类,一般就是死循环一样的执行,或者是Handler的postDelay(Runnnable,time)方法,或者是Thread+Handler都可以实现

你可能感兴趣的:(简单App开发之控件解析(长期更新))