2014-11-08 71 views
1

我正在構建一個android應用程序,用戶在其中選擇 最喜歡的android應用程序。如何在Android中單擊ImageButton時設置文本?

用戶通過單擊ImageButton選擇那裏最喜歡的應用程序。

現在,當用戶單擊ImageButton時,對話框打開。

下面是對話框代碼 -

 public void start() { 

     final CharSequence[] items = { 
       "Poor","Avg.","Good","Very-good","Execlent" 
     }; 

     AlertDialog.Builder builder = new AlertDialog.Builder(this); 
     builder.setTitle("Rank Your self"); 
     builder.setItems(items, new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int item) { 
       // Do something with the selection 
       //Toast.makeText(getBaseContext(), , Toast.LENGTH_SHORT).show();  

       // txt1.setText(item); 
       //String item2 = txt1.getText().toString(); 
      } 
     }); 
     AlertDialog alert = builder.create(); 
     alert.show(); 

    } 

當用戶單擊ImageButton的此對話框 對話框打開現在基本上我想。

當用戶選擇任何級別爲在對話框提及下面 文本該特定圖像顯示,這是在對話框中選擇

回答

0

你的功能public void onClick(DialogInterface dialog, int item)

接受整數值item

現在已經定義項的數組,

final CharSequence[] items = { "Poor","Avg.","Good","Very-good","Execlent" };

要訪問數組的元素使用items[item]其中item是你的數組的索引。

這將返回該數組的特定字符串。

返回該回字符串說itemst

最後文本設置爲txt1txt1.setText(itemst);onClick函數內

您還可以通過

public void onClick(DialogInterface dialog, int which, boolean isChecked) { if (isChecked){ Toast.makeText(getApplicationContext(),items[which], Toast.LENGTH_SHORT).show();}

獲得價值生成所選項目的烤麪包。

+0

謝謝!可以請舉一個例子,因爲我是新來的android ...請幫助 – 2014-11-08 14:37:59

+0

什麼樣的例子? 只需使用items [item]來獲取所需的選定項目。第二種解決方案也是另一種方式。 例如itemst = items [item] 其中items是一個字符串,item是你的aray的索引 – 2014-11-08 14:38:58

+0

它顯示錯誤 - 類型不匹配:不能從CharSequence轉換爲String。我使用像這樣 - public void start(){final CharSequence [] items = {「Beginner」,「Amateur」,「Semi Pro」,「Pro」,「Legend」}; AlertDialog.Builder builder = new AlertDialog.Builder (這個); \t建造者。setTitle(「排列你的自我」); (對象,對象,int item){//對selectionitemst = items [item];}})執行一些操作; AlertDialog alert = builder。創建(); alert.show();} – 2014-11-08 15:15:04

1

item爲項的數目的秩。 items是一個包含所有文本的數組。你所選擇的文本是這樣的:

String text = items[item]; 
相關問題