2012-11-11 42 views
0

我有一個ListView,我通過適配器dinamically填充它。我的ListView的每一行都有一個按鈕,我想在單擊時顯示一個DialogBox。但是我不知道如何將上下文傳遞給AlertDialog,所以它可以顯示在我的活動上。我已經是這樣的:對話框從按鈕自定義列表查看

....//ADAPTER 
public View getView(int position, View view, ViewGroup parent) { 
    .... 
    pay.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      AlertDialog.Builder ad = new AlertDialog.Builder(); 
      ad.setMessage("Are you sure?"); 
      ad.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int which) { 
        dialog.dismiss();      
       } 
      }); 
      AlertDialog dialog = ad.create()(); 
      dialog.show(); 
     } 
    }); 
.... 
} 

我想我必須在延伸我的ListView,但林失去了如何做到這一點和文檔的方式過大,無法找到活動添加某種監聽解決方案。

回答

2

你可以傳遞一個活動上下文適配器在構造函數中,然後用它在你的適配器類:

public class MyAdapter { 
    Context context; 

    public MyAdapter(Context context, ...) { 
     this.context = context; 
    } 
} 
+0

我沒有注意到的對話是在一個適配器創造,讓你擁有我的選票。 – Sam

+0

好的。當我看到您的答案時,我感到困惑......感謝您的投票。 –

+0

我忘記了將上下文傳遞給我的構造函數,我正在嘗試各種組合 - 「 - 」。對不起,真的非常感謝你。 –

相關問題