Edu*_*ira -1 java android android-layout android-fragments android-viewpager
主要活动(片段活动)
public class RestaurantDetails extends FragmentActivity {
private static final String TAG = "ImageGridActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.restaurantinfo);
inicialize();
/* Adding fragment in a relativelayout */
if (getSupportFragmentManager().findFragmentByTag(TAG) == null) {
final FragmentTransaction ft = getSupportFragmentManager()
.beginTransaction();
ft.add(R.id.fragment_container, new MapFragment(), TAG);
ft.commit();
}
/* Pager on bottom */
mPager.setCurrentItem(getIntent().getExtras().getInt("idRest"));
}
Run Code Online (Sandbox Code Playgroud)
布局主要活动
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="212dp"
tools:context=".MapFragment" />
<android.support.v4.view.ViewPager
android:id="@+id/pagerDetails"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
地图片段
public class MapFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
context = getActivity();
mapLayout = (RelativeLayout) inflater.inflate(R.layout.ipmaps, container, false);
locationImage = (ImageView) mapLayout
.findViewById(R.id.ipmaps_my_location_img_view);
setupIpMapsGenericResources();
return locationImage;
}
}
Run Code Online (Sandbox Code Playgroud)
地图布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ipmaps_relative_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#e1e1e1"
android:orientation="vertical" >
<FrameLayout
android:id="@+id/ipmaps_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</FrameLayout>
<ImageView
android:id="@+id/ipmaps_my_location_img_view"
android:src="@drawable/compasso"
android:layout_width="40dip"
android:layout_height="40dip"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="15dip"
android:layout_marginTop="15dip" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我也试过而不是在相对布局中添加片段,将其添加到元素上但没有成功.我绝望地寻求帮助.在程序运行MapFragment中的onCreateView方法后,他抛出了这个错误:"指定的子节点已经有父节点.你必须首先在子节点的父节点上调用removeView()"
您在返回ImageView中MapFragment的onCreateView().您应该返回,mapLayout因为它是ViewGroup层次结构的根.
而且,你在打电话super.onCreateView().通过这样做,您正在调用MapFragment父级onCreateView(),默认情况下返回null.
作为提示,您应该避免提供与类框架提供的类共享的类名.
| 归档时间: |
|
| 查看次数: |
2415 次 |
| 最近记录: |