我想创建一个导航抽屉,其中包含列表项目上方的个人资料图片。虽然我成功创建了一个,但我有一个问题:首先是标题图片带有圆形图像和背景也是文本Ej Lungay不可滚动。我想让它可滚动,当我向下滚动它的那一刻也必须向下滚动。我提供了下面的图片网址和代码:
这是滑动菜单,其中包含ListView和导航抽屉的标题: fragment_sliding_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:background="@color/white"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_marginTop="0dp"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:background="@drawable/background_poly">
<edu.ejapp.dotalegitstore.RoundedImage
android:id="@+id/user_pic"
android:layout_width="70dp"
android:layout_height="100dp"
android:layout_marginTop="8dp"
android:src="@drawable/hoiist"
android:layout_marginLeft="8dp"/>
<TextView
android:id="@+id/user_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/user"
android:layout_below="@id/user_pic"
android:layout_marginLeft="8dp"
android:textColor="@color/white"
/>
</RelativeLayout>
<ListView
android:id="@+id/list_view"
android:divider="@color/gray_light"
android:dividerHeight="0dip"
android:layout_width="match_parent"
android:layout_height="0dp"
android:listSelector="@color/app_main"
android:layout_weight="1"/>
</LinearLayout>
此处实现了fragment_sliding_menu.xml: SlidingMenuFragment.java
public class SlidingMenuFragment extends Fragment {
List<String> data;
ListView list_view;
SlidingMenuListAdapter adapter;
@SuppressLint("InflateParams")
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
ViewGroup root = (ViewGroup) inflater.inflate(R.layout.fragment_sliding_menu, null);
setUpView(root);
return root;
}
void setUpView(ViewGroup root){
list_view = (ListView)root.findViewById(R.id.list_view);
initList();
setUpClick();
}
void initList(){
data = new ArrayList<String>();
data.add("Home");
data.add("Arcana");
data.add("Courrier");
data.add("Hero Sets");
data.add("Immortals");
adapter = new SlidingMenuListAdapter(getActivity(),data);
list_view.setAdapter(adapter);
}
void setUpClick(){
list_view.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
BaseActivity.mTitle="Home";
break;
case 1:
BaseActivity.mTitle="Arcana";
break;
case 2:
BaseActivity.mTitle="Courrier";
break;
case 3:
BaseActivity.mTitle="Hero Sets";
break;
case 4:
BaseActivity.mTitle="Immortals";
break;
default:
BaseActivity.mTitle="Dota Legit Store";
}
MainActivity.closeDrawer();
}
});
}
}
这是ListView项:lis_view_sliding_menu_items.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="8dp"
android:orientation="horizontal" >
<TextView
android:layout_margin="10dip"
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textColor="@color/gray_dark"
android:text="" />
</LinearLayout>
然后xml文件在这个类中实现:SlidingMenuListAdapter.java
public class SlidingMenuListAdapter extends BaseAdapter {
List<String>data;
Context context;
public SlidingMenuListAdapter(Context context,List<String> data) {
this.context = context;
this.data = data;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return data.size();
}
@Override
public Object getItem(int id) {
// TODO Auto-generated method stub
return id;
}
@Override
public long getItemId(int id) {
// TODO Auto-generated method stub
return id;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater layoutInflater = LayoutInflater.from(this.context);
ViewHolder viewHolder;
if (convertView == null) {
viewHolder = new ViewHolder();
convertView = layoutInflater.inflate(R.layout.list_view_sliding_menu_items, null);
viewHolder.name = (TextView)convertView.findViewById(R.id.name);
//## Initial Views
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
//## Setup Data below
viewHolder = (ViewHolder) convertView.getTag();
TextView name = viewHolder.name;
name.setText(data.get(position));
return convertView;
}
public class ViewHolder {
TextView name;
}
}
该程序的任何其他功能都正常工作。
我的问题是:如何制作标题(请访问我上面提供的图片)可滚动,如列表项(家庭,奥秘,...)?请帮助我..我是一个Android初学者。任何建议都会被接受。