【发布时间】:2013-11-01 06:14:18
【问题描述】:
在我的 android 应用程序中,我正在从另一个 Sherlock 片段中替换 Sherlock 片段。 (假设 B 中的 A)我使用以下代码进行此替换
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
Fragment fragment = new AddNewRaveFragment();
ft.replace(R.id.raves_frame, fragment,"NewFragmentTag");
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
ft.addToBackStack(null);
ft.commit();
我用于片段 A 的布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<FrameLayout
android:id="@+id/raves_frame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="114dp"
android:layout_marginTop="69dp" >
</FrameLayout>
</RelativeLayout>
但是当我运行程序时,它显示布局像这样向左移动
这是我用于布局 B 的代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#ffffff" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:orientation="vertical" >
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<requestFocus />
</EditText>
</LinearLayout>
那么我怎样才能让它在屏幕上正确显示布局呢? 谢谢
【问题讨论】:
-
删除布局中的
android:layout_alignParentLeft="true"行 -
这是因为你已经把 android:layout_marginLeft 和 android:layout_marginTop 给你的 FrameLayout..
标签: android android-layout android-intent android-listview android-fragments