Java 如何使用ListView智能编程我的应用程序而不出现硬编码问题

Java 如何使用ListView智能编程我的应用程序而不出现硬编码问题,java,listview,baseadapter,Java,Listview,Baseadapter,我的ListViewAdpter在使用Android studio编译时出现硬编码错误。此编译错误一直存在。如果我在ListViewAdapter中创建最多500首歌词的列表,则不会出现硬编码错误,除非我创建了最多700首,否则程序将无法编译。 请给我一个最好的安全编码的例子 这是ListViewAdapter 公共类ListViewAdapter扩展了BaseAdapter{ //变数 语境; 充气机; 列表模型列表; ArrayList ArrayList; //建造师 公共ListVie

我的ListViewAdpter在使用Android studio编译时出现硬编码错误。此编译错误一直存在。如果我在ListViewAdapter中创建最多500首歌词的列表,则不会出现硬编码错误,除非我创建了最多700首,否则程序将无法编译。 请给我一个最好的安全编码的例子

这是ListViewAdapter

公共类ListViewAdapter扩展了BaseAdapter{
//变数
语境;
充气机;
列表模型列表;
ArrayList ArrayList;
//建造师
公共ListViewAdapter(上下文上下文,列表模型列表){
mContext=上下文;
this.modellist=modellist;
充气器=从(mContext)开始的充气器;
this.arrayList=新的arrayList();
this.arrayList.addAll(modellist);
}
公共类视图持有者{
TextView mTitleTv、mDescTv;
ImageView-mIconTv;
}
@凌驾
public int getCount(){
返回modellist.size();
}
@凌驾
公共对象getItem(int i){
返回modellist.get(i);
}
@凌驾
公共长getItemId(int i){
返回i;
}
@凌驾
公共视图getView(最终int i、视图视图、视图组父视图){
最终持票人;
如果(视图==null){
holder=新的ViewHolder();
视图=充气机。充气(R.layout.row,空);
//在row.xml中找到视图
holder.mTitleTv=(TextView)view.findViewById(R.id.maintTitle);
holder.mDescTv=(TextView)view.findViewById(R.id.mainDesc);
holder.mIconTv=view.findviewbyd(R.id.mainIcon);
视图.设置标签(支架);
}
否则{
holder=(ViewHolder)view.getTag();
}
//将结果设置为textview
holder.mTitleTv.setText(modellist.get(i.getTitle());
holder.mDescTv.setText(modellist.get(i.getDesc());
//在imagview中设置结果
holder.mIconTv.setImageResource(modellist.get(i.getIcon());
//listview项目单击
view.setOnClickListener(新的view.OnClickListener(){
@凌驾
公共void onClick(视图){
//稍后编码
if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词1”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”、“Song 001”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词2”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”、“Song 002”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词3”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”、“Song 003”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词4”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”、“Song 004”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词5”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”、“Song 005”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词6”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”,“Song 006”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}if(modellist.get(i).getTitle().equals(“歌曲001 |这首歌歌词7”)){
//使用actionbar的标题和textview的文本启动新活动
意向意向=新意向(mContext,favoritesContentActivity.class);
意图。putExtra(“actionBarTitle”,“Song 007”);
intent.putExtra(“contentTv”,“这是歌词细节\n\n\n”);
mContext.startActivity(意图);
}
//等等…多达900首歌词
}
});
返回视图;
}
//滤器
公共空过滤器(字符串图表文本){
charText=charText.toLowerCase(Locale.getDefault());
modellist.clear();
如果(ChartText.length()==0){
addAll(arrayList);
}
否则{