当.setView()太大时,如何防止警报对话框按钮消失? (机器人)

时间:2017-08-20 22:59:58

标签: java android button alertdialog missing-features

我有一个警报对话框正常工作。 它是用简单的.XML布局夸大的。 TextView使用HTML格式的String设置。 到现在为止还挺好。 问题是当.setView()太大时对话框按钮消失了! 他们在哪里?告诉他们我爱他们!:'(

如何预防来自消失的警告对话按钮当.setView()太大了?

截图:

1) SMALL, no problem!

2) BIG, where are my buttons???

这是MainActivity.java中的java代码:

AlertDialog.Builder dialogBox = new AlertDialog.Builder(this);
dialogBox.setTitle("Title");
dialogBox.setMessage("Subtitle");

// INFLATING THE LAYOUT
View alertLayout = getLayoutInflater().inflate( R.layout.scrollable, null );
TextView textMsg = (TextView)alertLayout.findViewById(R.id.textMsg);
textMsg.setText(Html.fromHtml("html string"));
dialogBox.setView(alertLayout);

// MY BUTTONS
dialogBox.setNeutralButton("Neutral", null);
dialogBox.setPositiveButton("Positive", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int id) {
        // Positive code
    }
});
dialogBox.show();

这是scrollable.xml文件:

<?xml version="1.0" encoding="utf-8"?>

<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingLeft="20dp"
        android:paddingRight="20dp">
        
        <TextView
            android:id="@+id/textMsg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Dynamic HTML text."
            android:textSize="20sp" />
            
    </LinearLayout>
</ScrollView>

0 个答案:

没有答案