android - 如何将布局充气器右对齐

标签 android html css android-layout

我使用的是布局 inflater 而不是菜单 inflater,其中布局在页面中心膨胀而不是显示在右上角。 我试过将重力向右改变,但没有用。

这是我的 xml 文件:

<?xml version="1.0" encoding="utf-8"?>
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="150dp"
android:layout_height="200dp"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:background="@color/primary"
android:orientation="vertical"
android:layout_alignParentEnd="true">
<LinearLayout
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:id="@+id/linshare"
    android:paddingTop="5dp"
    android:layout_height="wrap_content">
    <ImageView
        android:layout_width="wrap_content"
        android:background="@drawable/share"
        android:layout_height="wrap_content" />
     <TextView
         android:layout_width="match_parent"
         android:text="Share"
         android:textSize="16sp"
         android:gravity="center"
         android:layout_gravity="center_horizontal"
         android:textColor="#FFFFFF"
         android:layout_height="match_parent" />
    </LinearLayout>
 <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="10dp">
    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="#FFFFFF"/>
  </LinearLayout>
  <LinearLayout
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:paddingTop="5dp"
    android:id="@+id/lininvite"
    android:layout_height="wrap_content">
    <ImageView
        android:layout_width="wrap_content"
        android:background="@drawable/invite"
        android:layout_height="wrap_content" />
    <TextView
        android:layout_width="match_parent"
        android:text="Invite Friends"
        android:textSize="16sp"
        android:gravity="center"
        android:layout_gravity="center_horizontal"
        android:textColor="#FFFFFF"
        android:layout_height="match_parent" />
 </LinearLayout>
 <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="10dp">
    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="#FFFFFF"/>
 </LinearLayout>
 <LinearLayout
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:id="@+id/linrate"
    android:paddingTop="5dp"
    android:layout_height="wrap_content">
    <ImageView
        android:layout_width="wrap_content"
        android:background="@drawable/rate"
        android:layout_height="wrap_content" />
    <TextView
        android:layout_width="match_parent"
        android:text="Rateus"
        android:textSize="16sp"
        android:gravity="center"
        android:layout_gravity="center_horizontal"
        android:textColor="#FFFFFF"
        android:layout_height="match_parent" />
  </LinearLayout>
  <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="10dp">
    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="#FFFFFF"/>
  </LinearLayout>
  <LinearLayout
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:paddingTop="5dp"
    android:id="@+id/linhelp"
    android:layout_height="wrap_content">
    <ImageView
        android:layout_width="wrap_content"
        android:background="@drawable/help"
        android:layout_height="wrap_content" />
    <TextView
        android:layout_width="match_parent"
        android:text="Help"
        android:textSize="16sp"
        android:gravity="center"
        android:layout_gravity="center_horizontal"
        android:textColor="#FFFFFF"
        android:layout_height="match_parent" />
  </LinearLayout>
  <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="10dp">
    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="#FFFFFF"/>
  </LinearLayout>
  </LinearLayout>
   </RelativeLayout>

代码:

private void menz() {
    LayoutInflater layoutInflater = LayoutInflater.from(Additionone.this);
    View promptView = layoutInflater.inflate(R.layout.menuinflate, null);
    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Additionone.this);
    alertDialogBuilder.setView(promptView);
    final LinearLayout share = (LinearLayout) promptView.findViewById(R.id.linshare);
    final LinearLayout invite = (LinearLayout) promptView.findViewById(R.id.lininvite);
    final LinearLayout rate = (LinearLayout) promptView.findViewById(R.id.linrate);
    final LinearLayout help = (LinearLayout) promptView.findViewById(R.id.linhelp);
    share.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent sendIntent = new Intent();
            sendIntent.setAction(Intent.ACTION_SEND);
            sendIntent.putExtra(Intent.EXTRA_TEXT, "Future of Learning http://www.pencilruler.com/ ");
            sendIntent.setType("text/plain");
            startActivity(sendIntent);

        }
    });
    invite.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent i = new Intent(Intent.ACTION_SEND);
            i.setType("message/rfc822");
            i.putExtra(Intent.EXTRA_EMAIL, new String[]{""});
            i.putExtra(Intent.EXTRA_SUBJECT, "QUIZ APP");
            i.putExtra(Intent.EXTRA_TEXT, "You have to try this quiz app");
            try {
                startActivity(Intent.createChooser(i, "Send mail..."));
            } catch (android.content.ActivityNotFoundException ex) {
                Snackbar snackbar = Snackbar
                        .make(coordinatorLayout, "NO EMAIL CLIENTS INSTALLED", Snackbar.LENGTH_LONG);

                snackbar.show();

            }
        }
    });
    help.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent i=new Intent(Additionone.this,HelpAct.class);
            startActivity(i);
            Additionone.this.finish();

        }
    });
    AlertDialog alert = alertDialogBuilder.create();
    alert.show();

}

截图: enter image description here

最佳答案

You need to set your Alert Dialog Builder Alignment as you are prompting your view in it.

使用 setGravity(Gravity.TOP | Gravity.RIGHT);

引用这个。

Window window = alertDialogBuilder.getWindow();
window.setLayout(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
window.setGravity(Gravity.TOP | Gravity.RIGHT);

注意:您可以根据自己的选择更改Alert DialogGravity

关于android - 如何将布局充气器右对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37206879/

相关文章:

java - 在 Android 应用程序中设置单个静态 applicationContext 有哪些缺点?

java - 在 Android Java 中将位保存在字节流中?

html - 布局无法在 Chrome 中正确呈现

html - 复选框属性设置为可见性 :hidden acts like display:none

android - 蓝牙连接与 Android 应用程序自动断开

android - 如何从对话框 fragment 中获取主机 fragment 中的按钮点击

php - 如何在 PHP 的 HTML 页面中显示错误消息?

html - 让第二行填补上面的空白

javascript - 如何通过ajax将表格单元格值传递给php

html - html5图片标签和Bootstrap如何结合使用