-----本文内容全部来自于慕课网上的用户笔记,我只是整理过来----
Button&ImageButton
ImageButton是用于在按钮上显示图片的。所以是没有android:text这个属性的。并且如果在布局文件中写上android:text="我是一个按钮",在android 4.4环境中是不会看到任何效果的;设置background图片会填充整个ImageButton,设置src图片会自适应;Button显示的文本内容推荐保存在strings.xml文件中
onClick事件
   
监听的三种方式
   
1.初始化控件;2.设置监听器;setOnClickListener3.实现onClick事件。a.匿名内部类实现;对象.setOnClickListener(new OnCLickListener)b.独立类实现;对象.setOnClickListener(监听器实例)c.接口方式。对象.setOnClickListener(this)1.匿名监听事件 loginButton.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View argView0) {// TODO Auto-generated method stubSystem.out.println("我的Button被点击了");}});2.独立事件loginButton.setOnClickListener(listener);外部单独:OnClickListener listener = new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubSystem.out.println("独立实现的类触发了");}};3.实现接口public class MainActivity extends Activity implements OnClickListener{loginImageButton.setOnClickListener(this);public void onClick(View v) {// TODO Auto-generated method stubLog.i("tag","第三种方法");}}
实现跑马灯效果
http://www.imooc.com/video/4308 
摘自 jiyangxiatian
   
1.TextView的内容过长时,默认折行2.跑马灯效果方法一:(只能实现单个TextView的跑马灯效果)android:singleLine="true"只能单行,超出的文字显示为"..."android:ellipsize="marquee"省略号没有,但没有跑马灯效果android:focusable="true"android:focusableInTouchMode="true"方法二:自定义一个类继承TextView,实现默认的三种构造函数,重写isFocused()方法,返回true在布局文件中将TextView改为(包名+类名)com.imooc.marqueetextviewdemo.MarqueeText解析:方法二中两个TextView都能够实现跑马灯效果是因为重写了isFocused()方法返回true,强制让TextView都focused;而方法一中,第一个TextView获得了焦点,而第二个TextView没有获得焦点,无法实现跑马灯效果问题:滚动一段时间后会自己停: android:marqueeRepeatLimit="marquee_forever"Tips:px,dp(dip),sp1.在开发中不建议使用px,px不能根据分辨率来进行等比缩放;2.dp和sp都可以根据分辨率来进行等比缩放;3.在控件中做长度大小限制时推荐使用dp,sp更多用于显示文字size;4.在android最新的SDK中推荐使用dp

使用AutoCompleteTextView
http://www.imooc.com/video/1471
摘自 Miss徐
   
步骤:1.初始化控件:先声明(private AutoCompleteTextView acTextView;),然后初始化(acTextView=(AutoCompleteTextView)findViewBy(R.id.autoCompleteTextView1);)2.创建一个适配器适配输入内容与数据源ArrayAdapter adapter = new ArrayAdapter(content,resource,objects);其中:content——this,上下文的一个对象;      resource——android.R.layout.simple_list_item_1(类似于activity_main的xml文件),对应的一个布局      objects——(参数objects是String类型数组的数据源)3.初始化数据源(数据源去匹配文本框中输入的内容)private String[ ] res ={“数据1”,”数据2”,”数据3”,”数据4....”};把他及添加到adapder中去ArrayAdapter adapter =new ArrayAdapter(this,android.R.layout.simple_list_item_1,res);4.将adapter与当前AutoCompleteTextView控件进行绑定AutoCompleteTextView.setAdapter(ArrayAdapter);5.在AutoCompleteTextView里面设置一条属性来使输入够3个字符开始匹配android:completionThreshold = "3"

MultiAntoCompleteTextView
   
   
使用MultiAutoCompleteTextView
http://www.imooc.com/video/1473
摘自 理想
MultiAutoCompleteTextView的设置方法与前者类似第一步:初始化控件第二步:需要一个适配器第三步:初始化数据源第四步:将adpter与控件绑定第五步:设置分隔符具体代码实现:①xml文件②初始化:private MultiAutoCompleteTextView matv = null;private String [] res ={"beijin1","shijiad","shins","shag","shanede","shadrfe","shaieuj","shaere","shieke","adn","as","ader","sh","sher","shadfd","saf","dfji"};③具体操作:/** 使用MultiAutoCompleteTextView实现自动提示:* * 1.初始化控件,记住findViewById(R.id.**)方法* 2.需要一个适配器* 3.初始化数据源-->此数据源去匹配文本框内容* 4.将Adapter与MultiAutoCompleteTextView绑定,调用setAdapter()方法* 5.设置输入几个字符后才进行自动提示* 6.设置分隔符* */this.matv = (MultiAutoCompleteTextView) findViewById(R.id.mctv);matv.setAdapter(adapter);//设置逗号为分隔符,即结束符号matv.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
   
使用ToggleButton
http://www.imooc.com/video/1612
摘自 Miss徐
   
ToggleButton默认是off状态android:textOn="开"android:textOff="关"——用这两个属性来表示界面显示的内容通过imageview控件来显示图片android:background="@drawable/off"来给off状态显示off这张图片在main activity.xml文件中初始化控件1.先声明:private ToggleButton tgbt;private ImageView img;2.再初始化tb = (ToggleButton) findViewById(R.id.toggleButton1);img =(ImageView)findViewById(R.id.imageView1);3.监听tb这个开关(给当前的tb设置监听器)先让mainactivityimplements OnCheckChangListener然后给tb设置监听器tb.setOnCheckedChangeListener(this);监听器的方法:public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {当tb被点击的时候当前方法会被执行。CompoundButton buttonView参数可以判断是哪个tb被点击,buttonView代表被点击的控件本身boolean isChecked参数是判断tb的状态,isChecked代表被点击的控件的状态当点击tb的时候要更换图片:通过img.setBackgroundResource(isChecked?R.drawable.on:R.drawable.off);通过这个三目运算来实现

使用RadioGroup
http://www.imooc.com/video/1748/0
摘自 不逃课
RadioGroup 属性android:oritentation = "horizontal"/"vertical"RadionButton 默认被选android:checked = "true"给RadioGroup增加监听setOnCheckedChangeListener(OnCheckedChangeListener listener);覆盖方法public void onCheckedChanged(RadioGroup gropup, int checkedId) {if (checkedId == R.id.radio0) {//checkedId是R.idLog.i("tag", "你是男孩");}else if(checkedId == R.id.radio1){Log.i("tag", "你是女孩");}}

更多相关文章

  1. Android初始化语言 (init.*.rc、init.conf文件格式)
  2. 自定义控件
  3. Android 中自定义控件和属性(attr.xml,declare-styleable,TypedA
  4. android注解初始化view
  5. 在控件的任意位置显示图片
  6. Android 应用初始化及窗体事件的分发
  7. 自定义SeekBarPreference控件(老外出品,直接在preferences文件中
  8. Android基础控件——ProgressBar自定义的介绍、动画效果实现、附

随机推荐

  1. 内存不够用还要速度快,终于找到可以基于 F
  2. 用过 mongodb 吧, 这三个大坑踩过吗?
  3. await,async 我要把它翻个底朝天,这回你总
  4. 如何让多端口网站用一个nginx进行反向代
  5. 快醒醒,C# 9 中又来了一堆关键词 init,rec
  6. 如何校验内存数据的一致性,DynamicExpress
  7. 数据结构与算法专题——第十一题 Treap树
  8. 终于弄明白了 Singleton,Transient,Scope
  9. C# 中的 is 真的是越来越强大,越来越语义
  10. 数据结构与算法专题——第九题 外排序