我正在尝试设计自定义对话框。 我遇到的问题是... textview的背景,只要文本得到更多的线条,对话框的主体就不会改变。 wrap_content没有工作......
PS(有部分,标题,内容,按钮) (标题和内容是两个TextView,两个图像作为背景)
一行很好
但是当线条增加时......他们被吃掉了!!
如果我使用wrap_content ......那就太大了! https://www.dropbox.com/s/in78b8gg0hfkfxh/toobig.png
这是xml的代码 `
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical|center_horizontal"
>
<LinearLayout
android:id="@+id/dialog"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="120dip"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="100dip"
android:orientation="vertical"
>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/title"
android:text="Title"
style="@style/TitleStyle"
android:gravity="bottom|center_horizontal"
android:paddingBottom="15dip"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="89dip"
android:background="@drawable/content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="L\na\ny\no\nu\nt\n"
android:gravity="center"
style="@style/TextStyle"
android:paddingRight="20dip"
android:paddingLeft="20dip"
android:paddingTop="10dip"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="0dip"
android:paddingTop="0dip" >
<Button
android:id="@+id/dialog_button_cancel"
android:layout_width="0dip"
android:layout_height="51dip"
android:layout_weight="0.50"
style="@style/BtnStyle"
android:background="@drawable/btn_action"
android:src="@drawable/btn"
android:text="取消"
android:gravity="center"
/>
<Button
android:id="@+id/dialog_button_ok"
android:layout_width="0dip"
android:layout_height="51dip"
android:layout_weight="0.50"
android:background="@drawable/btn_action"
android:src="@drawable/btn"
android:layout_marginLeft="10dip"
style="@style/BtnStyle"
android:text="確定"
android:gravity="center"
/>
</LinearLayout>
</LinearLayout>
`
答案 0 :(得分:0)
对于第二个(内容)TextView包装器(LinearLayout),尝试使用 wrap_content 而不是固定布局高度 89dip :
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="L\na\ny\no\nu\nt\n"
android:gravity="center"
style="@style/TextStyle"
android:paddingRight="20dip"
android:paddingLeft="20dip"
android:paddingTop="10dip"
/>
</LinearLayout>
编辑:如果问题出现在图片中(通过图片恕我直言,你的意思是包含标题和内容视图的白色矩形)尝试在XML背景中设置矩形而不是图像用法你暂时使用:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/listview_background_shape">
<stroke android:width="2dp" android:color="#ffffff" />
<padding android:left="2dp"
android:top="2dp"
android:right="2dp"
android:bottom="2dp" />
<corners android:radius="5dp" />
<solid android:color="#8000000" /> <!-- transparent -->
</shape>