2012-07-21 78 views
-1

我想提出一个网格布局,并希望把它放在一个警告dialog.but当我尝试用show()来显示警告对话框中,但警告对话框不显示GridView。相反,它正显示出在前面的对话框,并在其中电网项目不clickable.Here是编码后台GridView警告对话框不工作

public class GridViewActivity extends Activity { 


Context context; 
View layout; 
static final String[] MOBILE_OS = new String[] { "timer", "about"}; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    GridView gridView = (GridView)findViewById(R.id.gridView1); 
    gridView.setAdapter(new ImageAdapter(this, MOBILE_OS)); 
    gridView.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View v, 
       int position, long id) { 

      if(position == 0){ 
       Toast.makeText(GridViewActivity.this, "first icon is pressed", Toast.LENGTH_SHORT).show(); 
      } 
      else if(position == 1){ 
       Toast.makeText(GridViewActivity.this, "second icon is pressed", Toast.LENGTH_SHORT).show(); 
      } 
     }}); 
    Dialog(); 
} 
public void Dialog(){ 

    AlertDialog alertDialog; 
    Context mContext = GridViewActivity.this; 

    AlertDialog.Builder builder = new AlertDialog.Builder(GridViewActivity.this); 
    LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(LAYOUT_INFLATER_SERVICE); 

    View layout = inflater.inflate(R.layout.main,null); 

    builder.setView(layout); 
    alertDialog = builder.create(); 
alertDialog.show(); 
    } 

} 

请告诉我如何解决这个问题。

回答

0

只需编辑为:

gridView.setOnItemClickListener(new OnItemClickListener() { 
    public void onItemClick(AdapterView<?> parent, View v, 
      int position, long id) { 

     if(position == 0){ 
      Toast.makeText(GridViewActivity.this, "first icon is pressed", Toast.LENGTH_SHORT).show(); 
     } 
     else if(position == 1){ 
      Toast.makeText(GridViewActivity.this, "second icon is pressed", Toast.LENGTH_SHORT).show(); 
     } 
     ............... 
     Dialog(); // You Have called this method OUT-SIDE the click event 
     ....................... 
    }}); 
+0

抱歉,但它无法正常工作 – 2012-07-21 11:50:02