首页 > 适配器的应用

适配器的应用

1.实体类:

package com.example.adapter;public class DangDang {
private String writers;
private int img;
private String price;
private String critical;
public String getWriters() {
return writers;
}
public void setWriters(String writers) {
this.writers = writers;
}
public int getImg() {
return img;
}
public void setImg(int img) {
this.img = img;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
public String getCritical() {
return critical;
}
public void setCritical(String critical) {
this.critical = critical;
}
}

 

2.适配器配置

package com.example.adapter;import java.util.ArrayList;import com.example.adapter.NewsAdapter.ViewHolder;import android.content.Context;
import android.media.Image;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;public class DangAdapter extends BaseAdapter {
private ArrayList mlist;
private Context mContext;public DangAdapter(Context context, ArrayList mlist) {
super();
this.mlist = mlist;
this.mContext = context;
}@Override
public int getCount() {return this.mlist == null ? 0 : this.mlist.size();
}@Override
public Object getItem(int position) {return this.mlist.get(position);
}@Override
public long getItemId(int position) {return position;
}@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
LayoutInflater inflater = LayoutInflater.from(this.mContext);
convertView = inflater.inflate(R.layout.dangdang, null);
holder = new ViewHolder();
holder.writers = (TextView) convertView.findViewById(R.id.writers);
holder.img = (ImageView) convertView.findViewById(R.id.img);
holder.price = (TextView) convertView.findViewById(R.id.price);
holder.critical = (TextView) convertView
.findViewById(R.id.critical);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
final DangDang dangdang = this.mlist.get(position);
// 绑定展示数据
holder.writers.setText(dangdang.getWriters());
holder.img.setImageResource(dangdang.getImg());
holder.price.setText(dangdang.getPrice());
holder.critical.setText(dangdang.getCritical());
holder.critical.setOnClickListener(new OnClickListener() {@Override
public void onClick(View arg0) {
Toast.makeText(mContext, dangdang.getCritical(),
Toast.LENGTH_LONG).show();}
});
return convertView;
}public static class ViewHolder {
TextView writers;
ImageView img;
TextView price;
TextView critical;}}

 

3.activity:

public class DangActivity extends Activity{
private ListView listView;
private ArrayListmyData=new ArrayList();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView =(ListView) findViewById(R.id.mylist);
initMyData();
DangAdapter myAdapter=new DangAdapter(this,myData);
listView.setAdapter(myAdapter);
}
private void initMyData() {    
DangDang dangdang=new DangDang();
dangdang.setWriters("《培根随笔》(英)弗兰西斯·培根 著, 吴昱荣 译/ 2013-06-01 / 中国华侨出版社");
dangdang.setImg(R.drawable.layer);
dangdang.setPrice("¥:30.0");
dangdang.setCritical("英国随笔文学的开山之作,黑格尔、雪莱、罗素等大师一致推崇的传世美文;诗意和哲思的完美结合,文笔优美、警句迭出; ★1985年被美国《生活》杂志评选为“人类有史以来的20种最佳书”之一;同年入选美国《优良读物指南》推荐书目。 ★《培根随笔》谈及了政治、经济、宗教、爱");
myData.add(dangdang);dangdang=new DangDang();
dangdang.setWriters("《索罗河畔》(美)梭罗 著,田伟华 译/ 2010-12-01 / 中国三峡出版社");
dangdang.setImg(R.drawable.eecfd0d328203e8a15366658231c3174);
dangdang.setPrice("¥:30.0");
dangdang.setCritical("这是一本宁静、恬淡、充满智慧的书,语言优美,文字动人,见解精辟,耐人寻味,给人启迪。 ★经典珍藏本,美国自然文学的典范,当代美国读者最多的散文经典,与《圣经》诸书一同被美国国会图书馆评为“塑造读者的25本书”。 ★全世界数以万计的读者,海子心中的天堂生活,影响了托尔斯泰,圣雄甘地等人,从而改写了一些名族和国家的命运。 ★美国自然文学的典范,当代美国读者最多的散文经典,整个世界阅读和怀念的美国最好的书。 ★★★★★当当五星畅销图书 女人的修养与处世智慧全集(勒羽西、杨澜、徐静蕾倾情推荐!) 父与子全集(精装彩色珍藏版)(感动世界的父子真情,风靡全球70年,漫画世界最璀璨的明珠) 羊皮卷大全集(畅销珍藏本)(畅销几百年的成功圣经,全球畅销近10000000册,翻译成50多种语言,遍布全球150个国家和地区。) ◆◆◆◆◆当当更多热卖图书,请点击进入>>>>>");
myData.add(dangdang);
dangdang=new DangDang();
dangdang.setWriters("《源氏物语《〔日〕村上春树 著,施小炜 译/ 2010-06-01 / 南海出版社");
dangdang.setImg(R.drawable.e8d145de5ffdf97a4407ab4c5dd33513);
dangdang.setPrice("¥:30.0");
dangdang.setCritical("村上春树首次只写自己 ★村上春树专写“跑步” ★村上春树书写《1Q84》背后的故事 ★最不一样的村上文字 ★荣登日本“东贩”等畅销书排行榜首 ★如这般围绕一个主题,从正面书写自己,几乎从未有过。在长达四分之一个世纪里,日日都坚持跑步,各色各样的思绪从心底涌起…… 村上春树 ");
myData.add(dangdang);}
}

 

其中涉及到两个xml文件,一个是activity_main.xml,

一个是dangdang.xml.

dangdang.xml:

"1.0" encoding="utf-8"?>
"http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/choose"
android:layout_width="match_parent"
android:layout_height="wrap_content"android:textColor="#ff0000"/><TextView
android:id="@+id/writers"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/choose"
android:textColor="@color/selector_font_color"android:text="百年孤独" /><ImageView
android:id="@+id/img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/writers" android:visibility="visible"/><TextView
android:id="@+id/price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/img"
android:text=" 22.0" /><TextView
android:id="@+id/critical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/price"
android:text="顾客评分:3" />

 

actvity_main.xml:

"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=".MainActivity" ><ListView
android:id="@+id/mylist"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

 

转载于:https://www.cnblogs.com/zhongshujunqia/p/3948503.html

更多相关:

  • android:id 为控件指定相应的IDandroid:text 指定控件的文本,置尽量使用strings.xmlandroid:grivity 指定控件的基本位置 ,比如举重,居右,android:padding 指定控件的内边距,控件当中的内容android:singleLine 如果设置为真的话,则将控件的内容在同一行当中显示...

  • 布局主要分两个 其中主布局是

  • 大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它。它的使用更加简单,只需要创建一个 AnimationDrawabledF对象来表示Frame动画,然后通过addFrame 方法把每一帧要显示的内容添加进去,并设置播放间隔时间,本例子中间隔时间为5S, 最后通过start 方法就可。 以播放这个动画了,...

  • 作业要求: 作一个显示框里面分成三行 一二行占这个框的1/2 第三行独占1/2 第三行里面分成两列第一列占25%,第二列占75%。 屏幕显示效果 实现步骤:  

  • 一:Service简介 Android开发中,当需要创建在后台运行的程序的时候,就要使用到Service。 1:Service(服务)是一个没有用户界面的在后台运行执行耗时操作的应用组件。其他应用组件能够启动Service,并且当用户切换到另外的应用场景,Service将持续在后台运行。另外,一个组件能够绑定到一个service与之交...

  • 1. android:layout_weight使用说明: layout_weight是权重的意思,也就是各个控件所占的比重,用在LinearLayout布局中。当我们使用layout_weight的时候,layout_width和layout_height有三种表示方法   2. android:layout_weight使用之 l...

  • 发现很多Android应用的选项卡 都是显示在页面底部的,网上有资料:通过反射获取TabWidget中的私有变量,改变其值。今天反编译了腾讯微薄,发现实现这个很简单, 只需将布局文件中标签加个android:layout_gravity="bottom", 选项卡就会显示在页面底部,默认是android:...

  • 在.Net Framework中,配置文件一般采用的是XML格式的,.NET Framework提供了专门的ConfigurationManager来读取配置文件的内容,.net core中推荐使用json格式的配置文件,那么在.net core中该如何读取json文件呢?1、在Startup类中读取json配置文件1、使用Confi...

  •   1 public class FrameSubject extends JFrame {   2    3   …………..   4    5   //因为无法使用多重继承,这儿就只能使用对象组合的方式来引入一个   6    7   //java.util.Observerable对象了。   8    9   DateSub...

  • 本案例主要说明如何使用NSwag 工具使用桌面工具快速生成c# 客户端代码、快速的访问Web Api。 NSwagStudio 下载地址 比较强大、可以生成TypeScript、WebApi Controller、CSharp Client  1、运行WebApi项目  URL http://yourserver/swagger 然后...

  •   在绑定完Action的所有参数后,WebAPI并不会马上执行该方法,而要对参数进行验证,以保证输入的合法性.   ModelState 在ApiController中一个ModelState属性用来获取参数验证结果.   public abstract class ApiController : IHttpController,...

  • 1# 引用  C:AVEVAMarineOH12.1.SP4Aveva.ApplicationFramework.dll C:AVEVAMarineOH12.1.SP4Aveva.ApplicationFramework.Presentation.dll 2# 引用命名空间, using Aveva.Applicati...