我編碼的自己的適配器,通過一個ListView控件將它添加到我的ListActivity。 我寫了一個自己的適配器的原因是,我不得不做一些佈局更改列表entrys。在列表的每一個條目中,我都有3個TextViews。機器人,自定義ListAdapter得到的TextView文本
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<TextView
android:id="@+id/myNr"
android:layout_width="40dip"
android:layout_height="fill_parent"
android:layout_marginRight="15dip"
android:text="id"
android:textSize="25dip"
android:background="#333333"
android:gravity="center_horizontal"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/editor"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:text="Editor: " />
<TextView
android:id="@+id/date"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:singleLine="true"
android:ellipsize="marquee"
android:text="Date: " />
</LinearLayout>
接下來的事情我所做的,是實現 「onListItemClick-了Methode」。然後我實現了一個onListItemLongClick - 用下面的代碼監聽器:在活動我加入的onCreate
:
registerForContextMenu(getListView());
然後添加以下梅索德:
Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo menuInfo){
AdapterView.AdapterContextMenuInfo info;
info = (AdapterView.AdapterContextMenuInfo) menuInfo;
long id = getListAdapter().getItemId(info.position);
}
其中 「id」 爲列表中項目的索引。 我現在想用這個列表項的id =「myNr的texview的文本。 有沒有辦法得到這個文本?
這麼簡單,它的工作。謝謝。 :) – 2012-06-07 00:20:43