Android 使用getView在多个帧中获取行,其间有巨大的空白
这是我的getview,我得到的结果是一行,然后整个屏幕是空的。t滚动两帧后,将显示另一帧。Android 使用getView在多个帧中获取行,其间有巨大的空白,android,view,frame,Android,View,Frame,这是我的getview,我得到的结果是一行,然后整个屏幕是空的。t滚动两帧后,将显示另一帧。 @Override public View getView( int position, View convertView, ViewGroup parent) { View vi=convertView; if(convertView==null) vi = mInflater.inflate(R.layout.rows_screen, null)
@Override
public View getView( int position, View convertView, ViewGroup parent) {
View vi=convertView;
if(convertView==null)
vi = mInflater.inflate(R.layout.rows_screen, null);
TextView tv= (TextView) vi.findViewById(R.id.textView1);
tv1= (TextView) vi.findViewById(R.id.textView2);
tv.setText(name.get(position));
tv1.setText(phno.get(position));
return vi;
}
这包含listview
这是我的活动课:
package com.example.ems;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入java.util.Map;
导入android.app.Activity;
导入android.net.Uri;
导入android.os.Bundle;
导入android.provider.contacts合同;
导入android.provider.contacts contract.CommonDataTypes.Phone;
导入android.provider.Contacts contract.Contacts;
导入android.util.Log;
导入android.util.SparseBooleanArray;
导入android.view.Display;
导入android.view.LayoutInflater;
导入android.view.Menu;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.AdapterView;
导入android.widget.AdapterView.OnItemClickListener;
导入android.widget.ArrayAdapter;
导入android.widget.BaseAdapter;
导入android.widget.Button;
导入android.widget.ListView;
导入android.widget.TextView;
导入android.widget.Toast;
导入android.content.Context;
导入android.content.Intent;
导入android.database.Cursor;
公共类MainActivity扩展了活动{
静态最终整型拾取触点请求=0;
DatabaseHandler db=新的DatabaseHandler(此);
Map Map=newhashmap();
粘液瘤;
列表名称=新的ArrayList();
List phno=new ArrayList();
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
map=db.getAllDataWithName();
name=(List)map.get(“name”);
日志d(“测试”,“主要活动中的名称”+名称);
phno=(List)map.get(“number”);
日志d(“电话号码”、“电话号码”+phno);
/*
*我的适配器类被称为
*/
ma=新的MyAdapter(此);
ListView lv=(ListView)findViewById(R.id.listView1);
低压设置适配器(ma);
lv.SetScrolingCacheEnabled(假);
//lv.setOnItemClickListener(本);
lv.setItemsCanFocus(假);
lv.setTextFilterEnabled(真);
按钮btn_save=(按钮)findViewById(R.id.Button_save);
//按钮btn_显示=(按钮)findViewById(R.id.Button_显示);
//数据库处理程序
//db=新的DatabaseHandler(此);
//showAllData();
btn_save.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图arg0){
startActivityForResult(新意向(意向.行动),
联系人。内容(URI),选择联系人(请求);
/*
*EditText et=(EditText)findViewById(R.id.editText1);
*如果(et.getText().toString()!=null){//插入联系人
*Log.d(“插入:,”插入..”);db.addMyData(新
*MyData(et.getText().toString());Log.d(“消息”,
*“数据添加成功”+et.getText().toString());
*
*}else{Toast.makeText(getApplicationContext(),
*“无需保存”,Toast.LENGTH_SHORT.show();}
*showAllData();
*/
}
});
/*
*btn_show.setOnClickListener(新视图.OnClickListener(){
*
*@Override public void onClick(视图arg0){//正在读取所有数据
*Log.d(“读取:,“读取所有数据…”);列出数据列表=
*db.getAllData();Log.d(“数据1为:”,dataList.get(0));
*if(dataList.size()>0&&dataList!=null){
*
*//从xml获取ListView对象最终ListView=(ListView)
*findViewById(R.id.listView1);
*
*//定义新适配器//第一个参数-上下文//第二个
*参数-行的布局//第三个参数-行的ID
*写入数据的TextView//Forth-数据数组
*
*ArrayAdapter适配器=新
*ArrayAdapter(getApplicationContext(),
*android.R.layout.simple_list_item_1,android.R.id.text1,dataList);
*
*//将适配器分配给ListView ListView.setAdapter(适配器);
*
*//ListView项单击侦听器ListView.setOnItemClickListener(新建
*MoniteMcClickListener(){
*
*@Override public void onItemClick(AdapterView父视图、视图、,
*内部位置,长id){
*
*//ListView已单击项索引int itemPosition=position;
*
*//ListView已单击项值字符串itemValue=(字符串)
*listView.getItemAtPosition(位置);
*
*//显示警报Toast.makeText(getApplicationContext(),
*位置:“+itemPosition+”列表项:“+itemValue,
*吐司。长度(短)。show();
*
* }
*
* });
*
*}else{Toast.makeText(getApplicationContext(),“无需显示”,
*Toast.LENGTH_SHORT).show();}
*
* } });
*/
}
@凌驾
ActivityResult上的公共无效(int-reqCode、int-resultCode、意图数据){
super.onActivityResult(请求代码、结果代码、数据);
开关(r
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/black_background_metal">
<LinearLayout
android:id="@+id/listviewlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/footerlayout"
android:layout_marginBottom="5dip"
android:layout_marginTop="50dip" >
<ListView
android:id="@+id/listView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textColor = "#ffffff">
</ListView>
</LinearLayout>
<LinearLayout
android:id="@+id/footerlayout"
android:layout_width="fill_parent"
android:layout_height="45dip"
android:layout_alignParentBottom="true"
android:layout_marginTop="3dip"
android:gravity="center"
android:orientation="horizontal" >
<!-- <Button
android:id="@+id/button_show"
android:layout_width="0dip"
android:layout_height="40dip"
android:layout_weight="1"
android:text="Show" >
</Button>-->
<Button
android:id="@+id/button_save"
android:layout_width="0dip"
android:layout_height="40dip"
android:layout_weight="1"
android:text="Add New Contact" >
</Button>
</LinearLayout>
</RelativeLayout>
This contains the listview