<?xml version="1.0" encoding="utf-8"?>
testlist.xml
<?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="fill_parent"
android:id="@+id/LinearLayout01"> <TextView android:id="@+id/TestList_TextViewTitle"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:text="@string/testlist_title" /> <ListView android:id="@+id/TestList_ListView01"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:stackFromBottom="true" android:layout_weight="1">
</ListView></LinearLayout>
listlayout1.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/listlayout1_img"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_margin="5px" />
<LinearLayout android:orientation="vertical"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<TextView android:id="@+id/listlayout1_title"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textColor="#FFFFFFFF" android:textSize="22px" />
<TextView android:id="@+id/listlayout1_info"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textColor="#FFFFFFFF" android:textSize="13px" />
</LinearLayout>
</LinearLayout>代码部分: @Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.testlist);
TextView _TextView = (TextView) findViewById(R.id.TestList_TextViewTitle);
ListView _ListView = (ListView) findViewById(R.id.TestList_ListView01); // 添加并且显示
BaseAdapter _BaseAdapter = getAdapter2();
_ListView.setAdapter(_BaseAdapter);
// 添加点击
_ListView.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
setTitle("点击第" + arg1 + " " + arg2 + " " + arg3 + "个项目");
}
});
// 添加长按点击
_ListView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
menu.setHeaderTitle("长按菜单-ContextMenu");
menu.add(0, 0, 0, "弹出长按菜单0");
menu.add(0, 1, 0, "弹出长按菜单1");
}
});
setListAdapter(getAdapter());
} private BaseAdapter getAdapter2() {
//生成动态数组,加入数据
ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String, Object>>();
for(int i=0;i<10;i++)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("ItemImage", R.drawable.icon);//图像资源的ID
map.put("ItemTitle", "Level "+i);
map.put("ItemText", "Finished in 1 Min 54 Secs, 70 Moves! ");
listItem.add(map);
}
//生成适配器的Item和动态数组对应的元素
final SimpleAdapter listItemAdapter = new SimpleAdapter(this,listItem,//数据源
R.layout.listlayout2,//ListItem的XML实现
//动态数组与ImageItem对应的子项
new String[] {"ItemImage","ItemTitle", "ItemText"},
//ImageItem的XML文件里面的一个ImageView,两个TextView ID
new int[] {R.id.ItemImage,R.id.ItemTitle,R.id.ItemText}
); return listItemAdapter;
}
testlist.xml
<?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="fill_parent"
android:id="@+id/LinearLayout01"> <TextView android:id="@+id/TestList_TextViewTitle"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:text="@string/testlist_title" /> <ListView android:id="@+id/TestList_ListView01"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:stackFromBottom="true" android:layout_weight="1">
</ListView></LinearLayout>
listlayout1.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/listlayout1_img"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_margin="5px" />
<LinearLayout android:orientation="vertical"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<TextView android:id="@+id/listlayout1_title"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textColor="#FFFFFFFF" android:textSize="22px" />
<TextView android:id="@+id/listlayout1_info"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textColor="#FFFFFFFF" android:textSize="13px" />
</LinearLayout>
</LinearLayout>代码部分: @Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.testlist);
TextView _TextView = (TextView) findViewById(R.id.TestList_TextViewTitle);
ListView _ListView = (ListView) findViewById(R.id.TestList_ListView01); // 添加并且显示
BaseAdapter _BaseAdapter = getAdapter2();
_ListView.setAdapter(_BaseAdapter);
// 添加点击
_ListView.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
setTitle("点击第" + arg1 + " " + arg2 + " " + arg3 + "个项目");
}
});
// 添加长按点击
_ListView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
menu.setHeaderTitle("长按菜单-ContextMenu");
menu.add(0, 0, 0, "弹出长按菜单0");
menu.add(0, 1, 0, "弹出长按菜单1");
}
});
setListAdapter(getAdapter());
} private BaseAdapter getAdapter2() {
//生成动态数组,加入数据
ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String, Object>>();
for(int i=0;i<10;i++)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("ItemImage", R.drawable.icon);//图像资源的ID
map.put("ItemTitle", "Level "+i);
map.put("ItemText", "Finished in 1 Min 54 Secs, 70 Moves! ");
listItem.add(map);
}
//生成适配器的Item和动态数组对应的元素
final SimpleAdapter listItemAdapter = new SimpleAdapter(this,listItem,//数据源
R.layout.listlayout2,//ListItem的XML实现
//动态数组与ImageItem对应的子项
new String[] {"ItemImage","ItemTitle", "ItemText"},
//ImageItem的XML文件里面的一个ImageView,两个TextView ID
new int[] {R.id.ItemImage,R.id.ItemTitle,R.id.ItemText}
); return listItemAdapter;
}
解决方案 »
- android4.0 adb无法调试!360助手USB连接原理是怎样的?
- 使用canvas的drawTextOnPath 在一个指定的path(我这里是一个圆)上绘制文本,怎样使文本绕着圆均匀分布呀?
- android中如何分析URL
- Ndk 操作 sqlite 数据库
- Android十万火急的问题,请高手救命
- 如何在真机上验证APP?
- 千呼万唤始出来,Android版块终于开了!好好庆祝一下!
- 怎么改变toast的大小
- 在android中使用AsyncTask从网络中下载图片,但是调用了execute方法后,最后不执行onPostExcute方法
- 准备学Android开发,得买个啥样的手机测试呢?
- android 平滑绘制字符串(毛刺)
- 获得SQLiteDatabase对象
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"><LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView android:id="@+id/imgsmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5px"/>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="665px"
android:layout_height="wrap_content">
<LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView android:id="@+id/txt1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFFFF"
android:text="名 称:"
android:textSize="22px" />
<TextView android:id="@+id/txtname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFFFF"
android:textSize="22px" />
<TextView android:id="@+id/txt2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFFFF"
android:text="价 格:"
android:textSize="13px" />
<TextView android:id="@+id/txtprice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFFFF"
android:textSize="22px" />
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView android:id="@+id/txt3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFFFF"
android:text="类 别:"
android:textSize="22px" />
<TextView android:id="@+id/txtmsecondid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFFFF"
android:textSize="22px" />
</LinearLayout>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
>
<Button android:id="@+id/btselect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|top"
android:text="详 细"
/>
<Button android:id="@+id/btinsert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:text="预 定"
/>
</LinearLayout>
</LinearLayout>package com.yookey.activity;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import com.yookey.activity.MainActivity.ClickEvent;
import com.yookey.activity.MainActivity.ItemClickListener;
import com.yookey.dal.DDineManager;
import com.yookey.model.DDine;
import com.yookey.model.MFirst;
import com.yookey.model.MSecond;import android.app.ListActivity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.SimpleAdapter;
import android.widget.TextView;public class ShowCookbookActivity extends ListActivity {
List<DDine> ddinelist=null;
private List<Map<String, Object>> mData;
Class<com.yookey.activity.R.drawable> cls = R.drawable.class;
DDineManager ddm=new DDineManager();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
ddinelist=ddm.GetDdinelist(getIntent().getStringExtra("autoid"));
mData = getData();
MyAdapter adapter = new MyAdapter(this);
setListAdapter(adapter);
}
private List<Map<String, Object>> getData() {
List<Map<String, Object>> datalist = new ArrayList<Map<String, Object>>();
for(DDine dd : ddinelist){
HashMap<String, Object> map = new HashMap<String, Object>();
Integer imgid=0;
try {
imgid = cls.getDeclaredField(dd.getDineImgSmall()).getInt(null);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
map.put("imgsmall", imgid);
map.put("txtname", dd.getDineName());
map.put("txtprice", dd.getDinePrice());
map.put("txtmsecondid", dd.getmSecondId());
map.put("autoid", dd.getAutoId());
datalist.add(map);
}
return datalist;
}
public final class ViewHolder{
public ImageView imgsmall;
public TextView txtname;
public TextView txtprice;
public TextView txtmsecondid;
public TextView txt1;
public TextView txt2;
public TextView txt3;
public Button btselect;
public Button btinsert;
}
public class MyAdapter extends BaseAdapter{ private LayoutInflater mInflater;
public MyAdapter(Context context){
this.mInflater = LayoutInflater.from(context);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
} @Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return null;
} @Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 0;
} @Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
holder=new ViewHolder();
convertView = mInflater.inflate(R.layout.cookbooklist, null);
holder.imgsmall = (ImageView)convertView.findViewById(R.id.imgsmall);
holder.txtname = (TextView)convertView.findViewById(R.id.txtname);
holder.txtprice = (TextView)convertView.findViewById(R.id.txtprice);
holder.txt1 = (TextView)convertView.findViewById(R.id.txt1);
holder.txt2 = (TextView)convertView.findViewById(R.id.txt2);
holder.txt3 = (TextView)convertView.findViewById(R.id.txt3);
holder.txtmsecondid = (TextView)convertView.findViewById(R.id.txtmsecondid);
holder.btselect = (Button)convertView.findViewById(R.id.btselect);
holder.btinsert = (Button)convertView.findViewById(R.id.btinsert);
convertView.setTag(holder);
}else {
holder = (ViewHolder)convertView.getTag();
}
holder.imgsmall.setBackgroundResource((Integer)mData.get(position).get("imgsmall"));
holder.txtname.setText((String)mData.get(position).get("txtname"));
holder.txtmsecondid.setText((String)mData.get(position).get("txtmsecondid"));
holder.txtprice.setText((String)mData.get(position).get("txtprice"));
//可以保存ID值
holder.btselect.setOnClickListener(new Select());
holder.btselect.setTag((String)mData.get(position).get("txtname"));
holder.btinsert.setOnClickListener(new Insert());
holder.btinsert.setTag((String)mData.get(position).get("autoid"));
return convertView;
}
}
class Select implements View.OnClickListener{
@Override
public void onClick(View v) {
setTitle(v.getTag().toString());
}
}
class Insert implements View.OnClickListener{
@Override
public void onClick(View v) {
setTitle(v.getTag().toString());
}
}
}
再不会呢,就是智商问题了...
我直接给你项目源代码了...