`
wang_peng1
  • 浏览: 3902661 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

动态添加lsitView

阅读更多

这个很简单 就是为了说明别忘了adapter.notifyDataSetChanged();

唤醒一下,其实这个唤醒也就是在buutton下用 或者在别的控件下调用 如果是在getView下就不必了

ublic class DynamicListItems extends ListActivity {
	private static final String			ITEM_KEY	= "key";
	ArrayList<HashMap<String, String>>	list		= new ArrayList<HashMap<String, String>>();
	private SimpleAdapter				adapter;
	private EditText					newValue;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.dynamic_list);
		newValue = (EditText) findViewById(R.id.new_value_field);

		setListAdapter(new SimpleAdapter(this, list, R.layout.row, new String[] { ITEM_KEY }, new int[] { R.id.list_value }));
		((ImageButton) findViewById(R.id.button)).setOnClickListener(getBtnClickListener());
	}

	private OnClickListener getBtnClickListener() {
		return new OnClickListener() {
			public void onClick(View view) {
				try {
					HashMap<String, String> item = new HashMap<String, String>();
					item.put(ITEM_KEY, newValue.getText().toString());
					list.add(item);
					adapter.notifyDataSetChanged();
				} catch (NullPointerException e) {
					Log.i("[Dynamic Items]", "Tried to add null value");
				}
			}
		};
	}
}

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
     
    
	 <ListView android:id="@+id/android:list"
	    android:layout_width="fill_parent"
	    android:layout_height="0px"
	    android:layout_weight="1"
	    android:cacheColorHint="#00000000">
	 </ListView>
  
  
	<LinearLayout
		android:orientation="horizontal"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"
		android:layout_marginTop="6px"
		android:layout_marginBottom="8px"
		android:layout_marginLeft="8px"
		android:layout_marginRight="8px"
		android:background="#00000000">
	    
	    
	   	<ImageButton
	   	android:id="@+id/button" 
	    	android:layout_width="100px"
	    	android:layout_height="100px"
	    	android:src="@android:drawable/ic_menu_add"  />	
	</LinearLayout>    	
     
	<LinearLayout
		android:orientation="vertical"
		android:layout_width="230px"
		android:layout_height="wrap_content"
	 	android:layout_marginTop="8px"
	 	android:layout_marginBottom="8px"
	 	android:layout_marginLeft="0px"
	 	android:layout_marginRight="28px"
	 	android:background="#cccccc00" >
	
		<EditText android:id="@+id/new_value_field"
			android:textColor="#020905"
			android:textSize="18sp"
	      	android:layout_marginTop="6px"
	      	android:layout_marginBottom="8px"
	       	android:layout_marginLeft="12px"
	       	android:layout_marginRight="12px"
	       	android:layout_width="210px"
	       	android:layout_height="wrap_content"
	     
	       	android:layout_weight="1"/>
	
	</LinearLayout>
     
  
</LinearLayout>

 

row

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#00000000">
    
    <TextView 
    	android:id="@+id/list_value" 
    	android:layout_width="fill_parent"
    	android:layout_height="wrap_content"
    />
</LinearLayout>
			
			

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics