QuickContactBadge 关联联系人
QuickContactBadge 本质是图片,知识额外的增加了关联到手机联系人的功能。
常有如下方法:
assignContactFromEmail(String emailAddress,boolean lazyLookup):将该图片关联到指定E-mail地址对应的联系人
assignContactFromPhone(String phoneNumber,boolean lazyLookup):将该图片关联到指定的电话号码对应的联系人
assignContactUri(Uri contactUri):将该图片关联到特定Uri对应的联系人
使用:
布局文件:
``` python
<QuickContactBadge
android:id="@+id/badge"
android:layout_width="wrap_contact"
android:layoyt_height="wrap_contact"
android:src="@drawable/ic_launcher"/>
程序:
private QuickContactBadge badge;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
badge = (QuickContactBadge)findViewById(R.id.badge);
//将QuickContactBadge关联到010-66666666电话号码对应的联系人上 badge.assignContactFromPhone("010-666666666",false);
}
AbsListView 常用属性:
android:choiceMode 设置AbsListView的选择行为:
none 不显示任何选中项
singleChoice 允许单选
multipleChoice 允许多选
multipleChoiceModal 允许多选
android:drawSelectorOnTop 设置为true,选中的列表强会显示在上面
android:fastScrollEnabled 设置是否允许快速滑动,true将显示滚动图标,并允许用户拖动图标进行快速滚动。
android:listSelector 指定被选中的列表项上绘制Drawable
android:scrollingCache 设为true,该组件在滚动时将会使用绘制缓存
android:smoothScrollbar 设置为false,则不在header View之后绘制分隔条
android:stackFromBottom 设置是否从底端开始排列列表项
android:textFilterEnabled 设置是否对列表进行过滤。当该AbsListView对应的Adapter实现了Filter接口时该属性才会起作用
android:transcriptMode 设置该组件的滚动模式:
disable:关闭滚动,这是默认值
normal: 当该AbsListView受到数据改变通知,且最后一个列表项可见时,该AbsListView将会滚动到底端
alwaysScroll:该AbsListView总会自动滚动到底端
ListView常见属性:
android:divider 设置列表项的分隔条
android:dividerHeight 设置分隔条的高度
android:entries 指定一个数组资源,Android将根据该数组资源来生成ListView(<resource---<string-array name=="name"----<item)
android:footerDividersEnabled 设置为false,则不在footer View之前绘制分隔条
android:headerDividersEnabled 设置为false,则不在header View之后绘制分隔条
Adapter
ArrayAdapter: context,ResourceId,list
SimpleAdapter: context,list,ResourceId,String[],int[]
SimpleCursorAdapter:context,ResourceId,cursor,String[],,int[]
ListActivity:
Activity直接继承ListActivity,ListActivity的子类无须调用setContentView()方法来显示某个界面,而是可以直接传入一个内容Adapter,ListActivity的子类就呈现出一个列表。
public class ListActivity extends ListActivity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
String[] arr={"sun","li","wang","wu"};
ArrayAdapter adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_mutiple_choice,arr);
setListAdapter(adapter);
}
}
开发者还可以在onCreate()方法中通过setContentView(int layoutId)方法设置用户的自定义布局。需要指出的是,在开发者指定的界面布局中应该包含一个id为@+id/android:list的ListView
<ListView
android:id="@+id/android:list"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
id="@id/android:empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="空数据"/>