第七章 开发用户界面

UI组件:
  Android中的UI组件可分位4种模块:
    1.UI组件;
    2.布局管理器---盛放UI组件,布局管理器可以多重嵌套
      常见的布局管理器:
        1)线性布局:LinearLayout
        2)相对布局: RelativeLayout
        3)表格布局:TableLayout
        4)帧布局 : FrameLayout
    3.容器(Activity)
    4.事件处理器

组件可见(visible)
  XML文件:android:visibility="visible"
  Java代码:view.setVisibility(View.VISIBLE);
组件不可见(invisible)
  XML文件:android:visibility="invisible"
  Java代码:view.setVisibility(View.INVISIBLE);
组件隐藏(GONE)
  XML文件:android:visibility="gone"
  Java代码:view.setVisibility(View.GONE);

========================TextView用于显示文字=============================
在代码中设置TextView的一些属性:
  tv1.setBackgroundColor(Color.BLUE);----设置背景色
  tv1.setTextColor(Color.WHITE);----设置文字颜色
  tv1.setTextSize(25);----设置文字大小
  tv1.getText();-----获取TextView显示的文字
在xml中设置属性:
  android:singleLine="true" ----设置单行显示
  android:text="abc" ----设置显示的文本内容
  android:textStyle="italic|bold" ---设置字体加粗倾斜

=======================Toast----土司通知/快显通知========================
使用方法:
Toast.makeText(context,text,duration);
  --第一个参数---上下文对象(一般为Activity的实例)
  --第二个参数---要弹出显示的文字内容
  --第三个参数---显示的时间长短(Toast.Length_Long)

=======================EdtitText---文本输入组件===========================
常用属性/方法:
  android:singleLine="true"-- 设置单行显示
  android:hint="请输入密码"--输入内容为空的时候显示的文字
  android:textColorHint="#ff0000"--设置hint文字的颜色
  android:textColorHighlight="#00ff00"--选中时的背景色
  android:password="true"--显示的效果为密码
  android:maxLength="8"--输入内容的长度
  android:imeOptions="actionSearch"--回车键的功能
  android:enabled="false"---不可编辑
方法:
  et.requestFocus();//获取焦点(请求集中)
  et.setSelection(0,5);//光标选中0-5
  et.setSelection(7);//光标在第7字符个后面
  et.setEnableb(false);//不可编辑
  et.append("aaa");//在文本输入组件中追加 aaa

=======================给EditText添加内容改变的监听=========================

 1 et.addTextChangedListener(new TextWatcher() 
 2 {    
 3     @Override
 4     public void onTextChanged(CharSequence s, int start, int before,
 5             int count) 
 6     {
 7         // TODO Auto-generated method stub
 8         tv1.setText(s.toString());
 9     }
10 
11     @Override
12     public void beforeTextChanged(CharSequence s, int start, int count,
13             int after) 
14     {
15         // TODO Auto-generated method stub
16     }
17 
18     @Override
19     public void afterTextChanged(Editable s) 
20     {
21         // TODO Auto-generated method stub
22     }
23 });

 

================================Button---------按钮============================
常用属性/方法:
  android:enabled="false"---不可点击
  button.setEnabled(false);//不可点击


================================OptionMenu---选项菜单============================
属性:   android:orderInCategory="3"--排序方式,数字越大越靠下,如果数字相同,按照声明顺序显示
    android:title="文件"----当前条目的标题
    android:showAsAction="always"---是否在ActionBar上显示
    android:icon="@drawable/ic_launcher"---当前菜单选项的图标

添加选项菜单的方法:

1 public boolean onCreateOptionsMenu(Menu menu) 
2 {
3     // 通过菜单渲染器。为Activity添加菜单
4     getMenuInflater().inflate(R.menu.menu_main, menu);
5     return true;
6 }

为选项菜单中的条目添加监听:

public boolean onOptionsItemSelected(MenuItem item) 
{
    // 获取到点击条目的id
    int i = item.getItemId();
    // 根据id判断点击的是哪个条目
    switch (i) {
    case R.id.item1:
        //事件的处理方法写到这里
        break;
    case R.id.item2:
        //事件的处理方法写到这里
        break;
    case R.id.item3:
        //事件的处理方法写到这里
        break;
    return true;
}

在xml中为选项菜单添加子菜单:

 1 <item
 2     android:id="@+id/item2"
 3     android:orderInCategory="3"
 4     android:showAsAction="always"
 5     android:title="编辑">
 6     <menu>
 7         <item android:title="哈哈哈">
 8         </item>
 9         <item android:title="呵呵呵">
10         </item>
11         <item android:title="嘿嘿嘿">
12         </item>
13        <item android:id="@+id/item22"
14             android:title="啪啪啪"/>
15     </menu>
16 </item>

 

posted on 2015-11-22 15:24  starFarming  阅读(171)  评论(0编辑  收藏  举报