2010-11-19 60 views
18
public void onItemClick(AdapterView<?> a, View v, int position, long id) { 
    AlertDialog.Builder adb = new AlertDialog.Builder(CategoriesTab.this); 

    adb.setTitle("Selected Category"); 
    adb.setMessage("Selected Item is = "+lv1.getItemAtPosition(position)); 
    adb.setPositiveButton("Ok", null); 
    adb.show(); 
} 

此时此时将显示一个警告框,当单击来自listview的项目时。我想转换alertbox为点击每个选项加载特定的xml。我怎样才能做到这一点? 感谢您的帮助。Android:如何从此创建Switch案例?

+1

这与switch语句有什么关系? – 2010-11-19 17:13:34

+3

打开更改的值(位置,因为我从代码中读取) – KevinDTimm 2010-11-19 17:17:02

回答

55
switch(position) { 
    case 0: 
     setContentView(R.layout.xml0); 
     break; 
    case 1: 
     setContentView(R.layout.xml1); 
     break; 
    default: 
     setContentView(R.layout.default); 
} 

我希望这将做的工作!

+0

我用这个,它的工作原理。做得这么简单。谢谢。 – Riza 2010-11-23 23:08:33

+0

@Riza:欢迎! – Ads 2010-11-24 05:11:57

1
switch(position) { 
    case 0: 
    ... 
    break; 
    case 1: 
    ... 
    break; 
    default: 
    ... 

} 

你的意思是?

1

你可以这样做:

@Override 
protected Dialog onCreateDialog(int id) { 
    String messageDialog; 
    String valueOK; 
    String valueCancel; 
    String titleDialog; 
    switch (id) { 

    case id: 
     titleDialog = itemTitle; 
     messageDialog = itemDescription 
     valueOK = "OK";    
     return new AlertDialog.Builder(HomeView.this).setTitle(titleDialog).setPositiveButton(valueOK, new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int whichButton) { 
       Log.d(this.getClass().getName(), "AlertItem"); 
      } 
     }).setMessage(messageDialog).create(); 

,然后打电话给

showDialog(numbreOfItem); 
+0

它将在单击列表时显示AlertDialog。我希望user513784已经实现了它。现在,他希望通过列表单击重定向到特定活动。 – Ads 2010-11-19 17:45:44

0
@Override 
public void onClick(View v) 
{ 
    switch (v.getId()) 
    { 
     case R.id.: 

      break; 
     case R.id.: 

      break; 
     default: 
      break; 
    } 
} 
+1

欢迎来到Stack Overflow!尽管这段代码可能会解决这个问题,但[包括解释](https://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)确实有助于提高您的帖子的质量。请记住,您将来会为读者回答问题,而这些人可能不知道您的代码建议的原因。 – 2018-02-08 08:56:08