2011-05-25 70 views
1

Im拼命地試圖讓我的listView打開警報對話框或充滿信息的正常對話框。我似乎無法得到它的工作。我希望它藏漢根據該名單上的項目被點擊listview打開警報對話框取決於選擇android

public class learn_tab1 extends ListActivity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, 
      BASICLIST)); 

    ListView lv = getListView(); 
    lv.setTextFilterEnabled(true); 

    lv.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 
        AlertDialog dialog = new AlertDialog.Builder(this).create(); 

    dialog.setCancelable(false); 
    dialog.setTitle("Instructions"); 
    dialog.setIcon(R.drawable.bone_icon); 
    dialog.setMessage("test"); 
    dialog.setButton(DialogInterface.BUTTON_POSITIVE, "Done", new DialogInterface.OnClickListener() { 


     @Override 
     public void onClick(DialogInterface dialog, int which) { 
      // TODO Auto-generated method stub 
      finish(); 
     } 
    }); 
    dialog.show(); 
      } 
     } 
    }); 
} 

回答

1

嘗試new AlertDialog.Builder(learn_tab1.this).create()顯示不同的信息;而不是new AlertDialog.Builder(this).create()

我不知道如何還一直遵守....

編輯

public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
    String item = (String)parent.getItemAtPosition(position); 

    // ... 
    dialog.setMessage(item); 

    // ... 
} 
+0

ü先生是個天才。工作。儘管...我將如何爲BASICLIST列表中的每個項目設置不同的對話框文本和標題? – karlstackoverflow 2011-05-25 13:46:29

+0

你可以使用'onItemClick'方法的'position'和/ id'id'參數,例如使用此方法:http://developer.android.com/reference/android/widget/AdapterView.html#getItemAtPosition(int)。使用它你可以訪問ArrayAdapter的項目。 – Olegas 2011-05-25 13:49:10

+0

那麼這將是一個switch語句?你能告訴我一個例子嗎? – karlstackoverflow 2011-05-25 14:15:16