展会信息港展会大全

Android TwoLineListItem XML属性 公共方法 (图解)
来源:互联网   发布日期:2015-11-26 10:22:49   浏览:3375次  

导读:这个布局是用在ListView中的,有两个子View。每一项有两个ID值为text1和text2的TextView的元素。也有一个ID是selecteIcon的元素,这个元素可以是任何View的子类(最典型的就是ImageView)。支持标准的布局资源文......

这个布局是用在ListView中的,有两个子View。每一项有两个ID值为text1和text2的TextView的元素。也有一个ID是selecteIcon的元素,这个元素可以是任何View的子类(最典型的就是ImageView)。支持标准的布局资源文件(不包含所选择的icon),但是你可以为这个对象自己定义XML布局文件。

三、 XML属性

属性名称

描述

android:mode

布局模式:oneLine 一行collapsing 折叠twoLine 两行

四、 公共方法

Public TextView getText1 ()

返回ID为Text1的TextView对象

返回值

TextView

Public TextView getText2 ()

返回ID为Text1的TextView对象

返回值

TextView

五、 受保护方法

protected void onFinishInflate ()

初始化XML布局。

<?xml version="1.0" encoding="utf-8"?>

<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="wrap_content">

<ImageView android:id="@+id/icon"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@android :drawable/presence_offline"/>

<TextView android:id="@android :id/text1"

android:layout_marginTop="1dip"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_toRightOf="@id/icon"

android:textSize="15dip"

android:textStyle="bold" />

<TextView android:id="@android :id/text2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_below="@android :id/text1"

android:layout_alignLeft="@android :id/text1"

android:paddingBottom="4dip"

android:includeFontPadding="false"

android:textSize="15dip"

android:textStyle="normal" />

<ImageView android:id="@android :id/selectedIcon"

android:layout_marginTop="9dip"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentRight="true"

android:layout_marginRight="7dip"

android:src="@android :drawable/sym_action_call"/>

</TwoLineListItem>

package com.test;

public class Contacts {

private String name;

private String phone;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getPhone() {

return phone;

}

public void setPhone(String phone) {

this.phone = phone;

}

}

package com.test;

import java.util.List;

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.ArrayAdapter;

import android.widget.TwoLineListItem;

public class ContactArrayAdapter extends ArrayAdapter<Contacts> {

private int resourceId;

public ContactArrayAdapter(Context context, int textViewResourceId, List<Contacts> objects) {

super(context, textViewResourceId, objects);

resourceId = textViewResourceId;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

Contacts contacts = getItem(position);

if (contacts == null) {

return null;

}

LayoutInflater inflater = (LayoutInflater)

getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);

TwoLineListItem view;

if (convertView == null) {

view = (TwoLineListItem) inflater.inflate(resourceId, parent, false);

} else {

view = (TwoLineListItem) convertView;

}

if (view.getText1() != null) {

view.getText1().setText(contacts.getName());

}

if (view.getText2() != null) {

view.getText2().setText("Android: " + contacts.getPhone());

}

return view;

}

}

package com.test;

import java.util.ArrayList;

import java.util.List;

import android.app.ListActivity;

import android.os.Bundle;

public class TestTwoLineListItem extends ListActivity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setListAdapter(new ContactArrayAdapter(this, R.layout.main, getContacts()));

}

private List<Contacts> getContacts() {

List<Contacts> contacts = new ArrayList<Contacts>();

Contacts c;

c = new Contacts();

c.setName("Android");

c.setPhone("123456");

contacts.add(c);

c = new Contacts();

c.setName("IOS");

c.setPhone("456789");

contacts.add(c);

return contacts;

}

}

运行效果:

赞助本站

人工智能实验室
AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港