我正在尝试创建自定义AlertDialog。问题是对话框中有多余的空间(图片中的白色矩形)。如何删除?
这是我的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="10dp"
android:background="@drawable/round_alert_like_ui">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/like_icon"
android:layout_marginStart="10dp"
android:layout_gravity="center"
android:id="@+id/likeIconId"
android:fitsSystemWindows="true"
android:padding="5dp" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/wowButtonId"
android:layout_marginStart="5dp"
android:src="@drawable/love_icon"
android:background="@drawable/round_button_for_round_menu_like_button"
android:layout_gravity="center" />
<ImageButton
android:layout_width="40dp"
android:layout_height="35dp"
android:id="@+id/blehButtonId"
android:layout_marginStart="5dp"
android:src="@drawable/bleh"
android:background="@drawable/round_button_for_round_menu_like_button"
android:layout_gravity="center" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/dislikeButtonId"
android:layout_marginStart="5dp"
android:src="@drawable/dislike_icon"
android:background="@drawable/round_button_for_round_menu_like_button"
android:layout_gravity="center" />
</LinearLayout>
</LinearLayout>
活动中:
final AlertDialog.Builder builder = new AlertDialog.Builder(context);
final AlertDialog alertDialog = builder.create();
View view1 = LayoutInflater.from(context).inflate(R.layout.layout_for_long_like_button_option, null);
答案 0 :(得分:0)
只需将父母<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
<main/>
和直子layout_width
的{{1}}更新为 LinearLayout
而不是 {{1} } 。请参见下面的更新代码:
LinearLayout
更新:
在致电match_parent
之后,尝试为警报对话框设置透明背景。
wrap_content
答案 1 :(得分:0)
作为一种选择,如果您要创建自定义对话框,则可以执行以下操作:
@Override
public void onStart() {
super.onStart();
Dialog dialog = getDialog();
if (dialog != null) {
int width = ViewGroup.LayoutParams.WRAP_CONTENT;
int height = ViewGroup.LayoutParams.WRAP_CONTENT;
dialog.getWindow().setLayout(width, height);
}
}
答案 2 :(得分:0)
尝试此布局并自定义。无需嵌套线性布局。这会导致性能问题。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:background="@color/colorPrimary"
android:padding="4dp">
<ImageButton
android:id="@+id/likeIconId"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:background="@android:color/black"
android:src="@android:drawable/ic_delete"/>
<Space
android:layout_width="8dp"
android:layout_height="0dp"/>
<ImageButton
android:id="@+id/wowButtonId"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:background="@android:color/black"
android:src="@android:drawable/ic_delete"/>
<Space
android:layout_width="8dp"
android:layout_height="0dp"/>
<ImageButton
android:id="@+id/blehButtonId"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@android:color/black"
android:adjustViewBounds="true"
android:src="@android:drawable/ic_delete"/>
<Space
android:layout_width="8dp"
android:layout_height="0dp"/>
<ImageButton
android:id="@+id/dislikeButtonId"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@android:color/black"
android:adjustViewBounds="true"
android:src="@android:drawable/ic_delete"/>
</LinearLayout>
在活动或片段中,您可以这样调用。无需使用警报对话框。
private fun showDialog(context: Context){
val dialog = Dialog(context)
dialog.setContentView(R.layout.layout_for_long_like_button_option)
dialog.show()
}
答案 3 :(得分:0)
感谢你们的友好合作。我自己解决了我的问题。我只是将布局添加到想要的位置并解决了所有问题。再次谢谢你