Проблема с изображением в AlertDialog с ListView [Android] - PullRequest
1 голос
/ 14 июня 2011

У меня проблема при попытке показать изображение в AlertDialog с ListView, здесь код:

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) не определен»

Мне бы хотелось, чтобы пользовательское изображение и текст отображались в AlertDialog с помощью ListView. Спасибо.

Ответы [ 2 ]

0 голосов
/ 14 июня 2011
stringArray = new String[1];

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

A String - это всего лишь String. Вы не можете поместить Drawable в конструктор. И так как вы используете метод getString, вам все равно не нужен конструктор:

 stringArray[0] = getString(R.string.facebook);
0 голосов
/ 14 июня 2011

Чего вы хотите достичь с помощью следующей строки кода?

stringArray [0] = новая строка (getString ( R.string.facebook), getImg ( R.drawable.icon));

Вы должны изменить его на

stringArray [0] = новая строка (getString ( R.string.facebook));

...