【发布时间】:2014-07-18 20:18:05
【问题描述】:
我是Android新手,未知太多,不知道从哪个方向寻找解决方案..希望有经验的开发者能启发我..
我的 UI 设计与常见的 Android 应用布局完全不同,目前我看到的大多数应用程序都使用 Tabs 或左上角控制按钮..
我的Main Activity是1)全屏没有ActionBar 2)有一个固定的“控制面板”层占据屏幕的下半部分3)一个全屏ViewPager(包含三个页面,可以左右滑动)下面“控制面板”层。
我能够实现 1&2 或 1&3,但不能同时实现。我认为主要问题是在同一屏幕内的 ViewPager 顶部添加控制面板。
我试图将 ViewPager 和“控制面板”作为两个片段放在 MainActivity 布局中。它没有工作...下面是布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.MainActivity">
<fragment
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:layout="@layout/fragment_pager"/>
<fragment android:name="com.example.MainFragment"
android:layout_width="fill_parent"
android:layout_height="200dip"
android:layout_gravity="bottom"
tools:layout="@layout/fragment_main"/>
</LinearLayout>
如果您需要更多信息,请附上我的 MainActivity
public class MainActivity extends FragmentActivity {
static final int NUM_ITEMS = 3;
private FragmentPagerAdapter mAdapter;
private ViewPager mPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActionBar actionBar = getActionBar();
actionBar.hide();
setContentView(R.layout.activity_main);
mAdapter = new DashboardAdapter(getSupportFragmentManager());
mPager = (ViewPager)findViewById(R.id.pager);
mPager.setAdapter(mAdapter);
mPager.setCurrentItem(1);
}
public static class DashboardAdapter extends FragmentPagerAdapter {
public DashboardAdapter(FragmentManager fm) {
super(fm);
}
@Override
public int getCount() {
return NUM_ITEMS;
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
return new FirstFragment();
case 1:
return new SecondFragment();
case 2:
return new ThirdFragment();
default:
return null;
}
}
}
}
我得到错误膨胀类片段,所以可能在我创建片段时发生
inflater.inflate(R.layout.first_fragment, container, false);
因为“控制面板”在ViewPager之外,所以视图不能膨胀……那么正确的做法是什么?
【问题讨论】:
标签: android android-layout android-fragments android-viewpager fragmentpageradapter