我在对话框中创建了一个布局,需要它可以滚动,以便屏幕较小的手机可以查看整个内容。但是,当我在滚动视图中包含其余布局时,它会让它太长而底部有很多空间。
我已经将scrollview高度设置为wrap_content,但这并没有改变任何东西,任何人都可以看到我的xml有什么问题可以让它做到这一点吗?
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/allowanceroot"
android:background="@drawable/background"
>
<TextView
android:id="@+id/dialogsetminutes"
android:text="@string/setminutesallowance"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="30dp"
></TextView>
<EditText
android:id="@+id/minutesinput"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:maxLines="1"
android:inputType="number"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginBottom="30dp"
></EditText>
<TextView
android:id="@+id/dialogsetmessages"
android:text="@string/setmessagesallowance"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
></TextView>
<EditText
android:id="@+id/messagesinput"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:maxLines="1"
android:inputType="number"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginBottom="30dp"
></EditText>
<TextView
android:id="@+id/dialogsetdata"
android:text="@string/setdataallowance"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
></TextView>
<EditText
android:id="@+id/datainput"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:maxLines="1"
android:inputType="number"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
></EditText>
</LinearLayout>
</ScrollView>
答案 0 :(得分:1)
这是我的代码(可能对你有用)
AlertDialog.Builder builder=new AlertDialog.Builder(this);
LayoutInflater inflater = (LayoutInflater) this.getSystemService(LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.yourlayoutName,null);
builder.setView(layout);
builder.show();