弹出布局不以姜饼设备为中心

时间:2014-04-05 16:37:08

标签: android android-layout popup

我的自定义布局有问题。

在模拟器上运行时,弹出窗口会将自身调整为我的自定义布局的大小,但是当我在Atrix上运行它时,会发生这种情况:

Picture

如您所见,布局不居中。

现在,这是我的自定义布局:

<TextView
    android:id="@+id/txtVersus"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_marginTop="10dp"
    android:padding="10dp"
    android:text="@string/popup_unlock"
    android:textColor="#FFFFFFFF"
    android:textSize="20sp"
    android:visibility="visible" />

<ImageView
    android:id="@+id/imgPopup"
    android:layout_width="@dimen/imagen_config_width"
    android:layout_height="@dimen/imagen_config_height"
    android:layout_gravity="center"
    android:background="@drawable/char_cersei"/>

<net.rahl.rahlutils.CustomFontTextView
    android:id="@+id/txtPopupName"
    style="@style/ConfigText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_margin="3dp"/>

<net.rahl.rahlutils.CustomFontTextView
    android:id="@+id/txtPopupCasa"
    style="@style/ConfigText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_margin="3dp"/>

<Button
    android:id="@+id/btnCerrarPopup"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:paddingLeft="30dp"
    android:paddingRight="30dp"
    android:text="@string/ok" />

这是我设置并显示它的代码的一部分:

final Dialog dialog = new Dialog(con);
dialog.setTitle("Felicidades!");
dialog.setContentView(R.layout.unlockdialog);
((ImageView) dialog.findViewById(R.id.imgPopup)).setBackgroundResource(con.getResources().getIdentifier("char_" + name.toLowerCase(), "drawable", con.getPackageName()));
((TextView) dialog.findViewById(R.id.txtPopupName)).setText(name);
((TextView) dialog.findViewById(R.id.txtPopupCasa)).setText(casa);
((Button) dialog.findViewById(R.id.btnCerrarPopup)).setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        dialog.cancel();
    }

});
dialog.setCanceledOnTouchOutside(false);
dialog.show();

你知道如何解决这个问题吗?

0 个答案:

没有答案