Как показать пользовательский диалог в Android SDK 14 (ICS) - PullRequest
1 голос
/ 04 марта 2012

Итак, я делаю свое первое приложение для Android, использую ADT в Eclipse и работаю с SDK версии 14 (ICS), и пытаюсь создать диалоговое окно, когда пользователь нажимает кнопку ImageButton, но, похоже, ничего не происходит.,Я изучил документацию и искал онлайновые учебные пособия, но для SDK ред. 14 еще не так много. Нужно ли использовать FragmentManager?Я не мог понять, как это использовать, но, насколько я могу судить, старый метод диалога должен работать нормально.

Вот соответствующий код (я думаю) ...

Main Activity.java:

ImageButton voiceBlock = (ImageButton) findViewById(R.id.voice_block);

    voiceBlock.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            Dialog dialog = new Dialog(getBaseContext());
            dialog.setContentView(R.layout.dialogue);
            dialog.setCancelable(true);
            ImageView voice = (ImageView) dialog.findViewById(R.id.InfoText);
//info is a variable referencing an info image which changes on what is in the app
            voice.setImageResource(info);
            dialog.show();
        }
    });

dialog.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="wrap_content" android:layout_height="wrap_content">

<ImageView
    android:src="@drawable/coin_text"
    android:id="@+id/InfoText"
    android:layout_width="300px"
    android:layout_height="200px" >

</ImageView>
</RelativeLayout>

Кто-нибудь знает, что происходит?

1 Ответ

1 голос
/ 04 марта 2012

Лично я никогда не использовал метод getBaseContext(). Я опробовал ваш код, но заменил упомянутую часть на:

Диалог диалоговое окно = новый диалог (OuterActivity.this);

где OuterActivity - это действие, в котором находится ваша кнопка, запускающая диалог. Теперь это работает для меня.

Надеюсь, это поможет.

...