您的位置:首页 > 其它

文章标题

2017-02-09 18:04 260 查看

listview的头视图

在给Listview顶部添加广告栏、简介等时候会用到头视图。

最简单等例子,上效果图:

实现以上效果需要:

MainActivity ,显示控制界面。

activity_main , 显示界面的xml,只包含listview。

listview_header,盛放头视图需要显示的所有内容。

item_listview ,盛放listview中每个子项需要显示内容。

具体代码如下:

MainActivity.java

public class MainActivity extends ActionBarActivity {

private static final String[] NUMBERS = {
"1","2","3","4","5","6","7"
};
//  private Gallery gallery;
private View header;
private ListView listView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = (ListView) findViewById(R.id.listview);

LayoutInflater inflater = LayoutInflater.from(this);
header = inflater.inflate(R.layout.listview_header, listView,false);
ListView.LayoutParams params = new ListView.LayoutParams(ListView.LayoutParams.FILL_PARENT,ListView.LayoutParams.WRAP_CONTENT);
header.setLayoutParams(params);
listView.addHeaderView(header,null,false);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.item_listview,NUMBERS);
listView.setAdapter(adapter);

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}


activity_main.xml

<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.listviewheaderview.MainActivity" >

<ListView
android:id="@+id/listview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />

</RelativeLayout>


listview_header.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:orientation="vertical" >

<ImageView
android:id="@+id/listview_header_webview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />

</LinearLayout>


item_listview.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="13dp"
android:text="1"
android:textSize="20dp" >

</TextView>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: