好吧,我試圖做一個列表視圖,列出一些地方,每個項目將有一個圖片(ImageVew)和一個TextView,當一個地方被擊中時,一個AlerDialog框將出現信息(每個地方的不同信息)。我知道如何製作列表視圖...但我不知道如何使它可點擊並顯示帶有差異信息的對話框窗口......我還需要一個適配器。是有可能做到這一點?如果是這樣的話?怎麼樣?比你TextView與AlerDialog
0
A
回答
1
在我的情況下,圖像是一個複選框。
的XML可能是這樣的:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<CheckBox android:id="@+id/check"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@android:drawable/btn_star"
android:focusable="false"/>
<TextView android:id="@+id/label"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginLeft="5px"
android:layout_marginTop="6px"
android:layout_toRightOf="@+id/check"
android:textSize="25px"
android:focusable="false"/>
</RelativeLayout>
你需要像一個適配器:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final Object np = getItem(position);
View view = null;
if (convertView == null) {
LayoutInflater inflator = (LayoutInflater) getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflator.inflate(R.layout.listitem, null);
final ViewHolder viewHolder = new ViewHolder();
viewHolder.text = (TextView) view.findViewById(R.id.label);
viewHolder.checkbox = (CheckBox) view.findViewById(R.id.check);
view.setTag(viewHolder);
viewHolder.checkbox.setTag(np);
} else {
view = convertView;
((ViewHolder) view.getTag()).checkbox.setTag(np);
}
final ViewHolder holder = (ViewHolder) view.getTag();
holder.text.setText(np.toString);
holder.text.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
[Create the Dialog]
}
});
holder.checkbox
.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
[do something]
}
});
return view;
}
static class ViewHolder {
protected TextView text;
protected CheckBox checkbox;
}
1
對列表視圖點擊添加事件偵聽器:
getListView().setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// you create your dialog here
}
});
來創建一個對話框:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("your_message_here")
.setPositiveButton(getResources().getString(R.string.ok),
dialogClickListener).setCancelable(false).show();
相關問題
- 1. 自定義AlerDialog
- 2. WebView沒有顯示在AlerDialog中
- 3. <textview></textview>與<textview />
- 4. TextView與permenant http://
- 5. 錯誤與TextView
- 6. 細胞與TextView的
- 7. 與textview倒計時
- 8. GridView與LinearLayout中的TextView
- 9. 問題與TextView對齊android
- 10. onClickListener couses崩潰與TextView的
- 11. SimpleCursorAdapter與SQLite的ImageView和TextView
- 12. 的AsyncTask與TextView的參數
- 13. TextView與gravity = center和ellipsize = marquee?
- 14. android textview與橢圓形
- 15. TextView與兩行對齊
- 16. textview與按鈕在畫廊
- 17. TextView與ImageSpan混淆線高
- 18. ListView與TextView與背景圖像
- 19. iphone tableview單元格與自定義textview - 獲取textview參考
- 20. 安卓:我的TextView如何把與TextView的
- 21. <TextView /> OR <TextView></TextView>
- 22. Android的可滾動TextView與OnClickListener
- 23. listview中有兩個textview與arrayadapter和arraylist
- 24. Android TextView 3行與橫向滾動
- 25. 自定義的TextView與圖標
- 26. 與兩個TextView的自定義按鈕
- 27. 的TextView與多個超鏈接
- 28. android垂直textview與圖像旁邊
- 29. 的TextView與自定義鏈接
- 30. 定製與3 TextView的ListView項目