【发布时间】:2015-04-27 14:28:13
【问题描述】:
我已经开发了一个方法来调用另一个 calss 中的方法。我已经创建了一个适配器,并且在其中我有一个覆盖 getView()。我需要做的是从列表视图中获取值并显示为报告。我在同一个项目的另一个活动中尝试了这个确切的代码。它完美地工作。但是,当我将它移到另一个活动中时,它不会给出任何错误。但是被覆盖的方法没有调用。我应该怎么做才能让它运行?
public class ViewList extends ActionBarActivity {
ArrayAdapter<Units> unitsAdapterView;
ListView ViewAll;
List<Units> Unit = new ArrayList<Units>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_view_list);
ViewAll = (ListView) findViewById(R.id.viewList);
populateListView();
viewView();
}
private void viewView(){
Button m=(Button)findViewById(R.id.tryBtn);
m.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// startActivity(new Intent(getApplicationContext(),ViewList.class));
populateListView();
}
});
}
private void populateListView(){
unitsAdapterView =new UnitListAdaptorView();
ViewAll.setAdapter(unitsAdapterView);
// unitsAdapterView.getView();
}
private class UnitListAdaptorView extends ArrayAdapter<Units> {
public UnitListAdaptorView() {
super (ViewList.this, R.layout.list,Unit);
Log.i("","A");
// A();
}
@override
public View getView(int position, View view, ViewGroup parent) {
Log.i("","Resue connceted bulb 5");
if (view == null) {
view = getLayoutInflater().inflate(R.layout.list,parent ,false);
}
Units currentUnit = Unit.get(position);
TextView name = (TextView)view.findViewById(R.id.lblViewName);
name.setText(currentUnit.getName());
TextView bulb=(TextView) view.findViewById(R.id.lblViewBulb);
bulb.setText(currentUnit.getBulbNo());
TextView fan=(TextView) view.findViewById(R.id.lblViewFan);
fan.setText(currentUnit.getFanNo());
return view;
}
}
}
【问题讨论】:
-
我看不出这不起作用的任何原因。您是否对项目进行了干净的构建?
-
没错。错误是由于调用我的数据库类时出错。这就是引发错误的原因
-
请回答您自己的问题或将其删除,以免它最终出现在“未回答”列表中。
-
好的,我会发布我自己的答案!不过谢谢.. :)
标签: android android-activity android-listview