我正在尝试在他们的应用上复制Twitter的个人资料视图。
以下是该视图的图片:
http://i.imgur.com/otgyxi4.png
我正在努力实现三件具体的事情:
我在列表上排名第一。这是标题布局(header.xml
):
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
...
</LinearLayout>
我将它加载到Fragment的onCreateView()
方法中:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_one, container, false);
final ListView listView = (ListView) view.findViewById(R.id.listview);
View header = inflater.inflate(R.layout.header, listView, false);
listView.addHeaderView(header, null, false);
...
return view;
}
这是我的第一个片段,fragment_one.xml
:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
在我的主要活动布局(activity_main.xml
)中,我有这个:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.astuetz.PagerSlidingTabStrip
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="@color/black"
app:pstsIndicatorHeight="2dp"
app:pstsShouldExpand="true"
app:pstsTabTextSize="14dp"
/>
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/tabs"
/>
</LinearLayout>
我的Activity的onCreate()
方法如下所示:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pager = (ViewPager) findViewById(R.id.pager);
pagerAdapter = new PagerAdapter(getSupportFragmentManager());
pager.setAdapter(pagerAdapter);
PagerSlidingTabStrip tabs = (PagerSlidingTabStrip) findViewById(R.id.tabs);
tabs.setViewPager(pager);
}
但是,我有两个问题:
如何解决这些问题?
答案 0 :(得分:0)
您可以通过将标题从正在刷过的视图中移除并将其放置在包含viewpager的父视图(例如相对布局或框架布局)中来保持标头静止。只需确保在将viewpager添加到父视图后添加标题视图。