2011-06-14 77 views
1

我有试图显示在AlertDialog的图像与一个ListView,这里的代码中的问题:问题的在AlertDialog图像使用ListView [Android的]

AlertDialog.Builder builder = new AlertDialog.Builder(this); 

ListView modeList = new ListView(this); 
stringArray = new String[1]; 

**stringArray[0] = new String(getString(R.string.facebook),getImg(R.drawable.icon));** 

ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, stringArray); 
modeList.setAdapter(modeAdapter); 

builder.setTitle("Share"); 
builder.setIcon(R.drawable.icon); 
builder.setItems(stringArray, new DialogInterface.OnClickListener() { 
public void onClick(DialogInterface dialog, int item) { 
        //Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show(); 
       } 
      }); 

AlertDialog alert = builder.create(); 
alert.show(); 

private Drawable getImg(int res) 
     { 
      Drawable img = getResources().getDrawable(res); 
      img.setBounds(0, 0, 48, 48); 
      return img; 
     } 

并且错误告诉我:“构造函数String(String,Drawable)未定义”

我想用ListView在AlertDialog中显示图像自定义和文本。谢谢。

回答

0
stringArray = new String[1]; 

**stringArray[0] = new String(getString(R.string.facebook),getImg(R.drawable.icon));** 

String一个仅仅是一个String。您不能将Drawable放入构造器中。而当你使用getString方法时,你不需要构造函数:

stringArray[0] = getString(R.string.facebook); 
0

你想用下面这行代码实现什么?

字符串数组[0] =新的字符串(的getString( R.string.facebook),GETIMG( R.drawable.icon));

你应该将其改为

字符串数组[0] =新的字符串(的getString( R.string.facebook));