带头部的GridView,HeaderGridView 源代码在此:
https://android.googlesource.com/platform/packages/apps/Gallery2/+/idea133/src/com/android/photos/views/HeaderGridView.java
是Google自己开发的,按说不会有错
我的代码非常简单:
先是.rl_headerview.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rl_header_view"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/tv_main_helloworld"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="1,2,3,4,5,6,7,8,9,10,11,12"
android:textSize="20sp"
android:textColor="#ff000000"
android:background="#ff00ff00"/>
</RelativeLayout>
再是MainActivity中的代码:
friendsArrayList = new ArrayList<String>();
friendsArrayList.add("关羽");
friendsArrayList.add("张飞");
friendsArrayList.add("赵云");
friendsArrayList.add("马超");
friendsArrayList.add("黄忠");
friendsArrayList.add("胃炎");
hgv_main = (HeaderGridView) findViewById(R.id.hgv_main);
LayoutInflater inflater = (LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
View llView = inflater.inflate(R.layout.rl_headerview, null);
ArrayAdapter<String> friendsadapter = new ArrayAdapter<String>(this,//上下文
android.R.layout.simple_list_item_1,
friendsArrayList);//数据
hgv_main.addHeaderView(llView);
hgv_main.setNumColumns(2);
hgv_main.setAdapter(friendsadapter);
但是出来的结果却是这样的,整个Header是歪的
而且我发现只有当我将每一行的NumColumns设成1时,Header部分才是正常的,NumColumns越大,歪的越厉害。
是否有人使用过这个HeaderGridView这个类?是否也发现过同样的问题?请指教!!
https://android.googlesource.com/platform/packages/apps/Gallery2/+/idea133/src/com/android/photos/views/HeaderGridView.java
是Google自己开发的,按说不会有错
我的代码非常简单:
先是.rl_headerview.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rl_header_view"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/tv_main_helloworld"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="1,2,3,4,5,6,7,8,9,10,11,12"
android:textSize="20sp"
android:textColor="#ff000000"
android:background="#ff00ff00"/>
</RelativeLayout>
再是MainActivity中的代码:
friendsArrayList = new ArrayList<String>();
friendsArrayList.add("关羽");
friendsArrayList.add("张飞");
friendsArrayList.add("赵云");
friendsArrayList.add("马超");
friendsArrayList.add("黄忠");
friendsArrayList.add("胃炎");
hgv_main = (HeaderGridView) findViewById(R.id.hgv_main);
LayoutInflater inflater = (LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
View llView = inflater.inflate(R.layout.rl_headerview, null);
ArrayAdapter<String> friendsadapter = new ArrayAdapter<String>(this,//上下文
android.R.layout.simple_list_item_1,
friendsArrayList);//数据
hgv_main.addHeaderView(llView);
hgv_main.setNumColumns(2);
hgv_main.setAdapter(friendsadapter);
但是出来的结果却是这样的,整个Header是歪的

而且我发现只有当我将每一行的NumColumns设成1时,Header部分才是正常的,NumColumns越大,歪的越厉害。
是否有人使用过这个HeaderGridView这个类?是否也发现过同样的问题?请指教!!