这里是代码,那就是列表视图! 谢谢! **我想从列表中的行获取信息并在新活动中打开它 该代码处于listView状态,并且存在包含单个项目视图的xml代码
public class HelpFriends extends Activity
{
ListView dilemasListView;
MyCustomListAdapter customListAdapter;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.help_friends);
dilemasListView = (ListView) findViewById(R.id.dilemasListView);
HMCApplication myApp = (HMCApplication)getApplication();
myApp.getAllDilemasFromServer();
ArrayList<Dilema> myDilemas = myApp.getDilemas();
//dilemasListView.setOnItemClickListener(this);
customListAdapter = new MyCustomListAdapter(this,
R.layout.dilema_list_layout, // layout of a single item in the list
myDilemas);
dilemasListView.setAdapter(customListAdapter);
}
// the adapter handles the list
public class MyCustomListAdapter extends ArrayAdapter<Dilema>
{
// internal list of data
ArrayList<Dilema> mItems;
public MyCustomListAdapter(HelpFriends theActivity,
int viewResourceId, ArrayList<Dilema> objects)
{
super((Context) theActivity, viewResourceId, objects);
mItems = objects;
}
@Override
public int getCount()
{
return mItems.size();
}
@Override
public Dilema getItem(int position)
{
return mItems.get(position);
}
@Override
public int getPosition(Dilema item)
{
return mItems.indexOf(item);
}
@Override
public long getItemId(int position)
{
return position;
}
// getView returns / creates the view for a SINGLE item in the list
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
// theUser will be the logic object with all data
Dilema theDilema = mItems.get(position);
// row will be the visual object
LayoutInflater inflater = getLayoutInflater();
// single_fruit_item_layout is the layout of a single row
View row = inflater.inflate(R.layout.dilema_list_layout, parent, false);
// populate the row object from theUser object
TextView TextVieUsername = (TextView) row.findViewById(R.id.usernameText);
TextVieUsername.setText(theDilema.getUsername());
TextView TextViewQuestion = (TextView) row.findViewById(R.id.questionText);
TextViewQuestion.setText(theDilema.getQuestion());
TextView TextViewTime = (TextView) row.findViewById(R.id.timeText);
TextViewTime.setText(theDilema.getTime());
TextView TextViewCategory = (TextView) row.findViewById(R.id.categoryText);
TextViewCategory.setText(theDilema.getCategory());
return row;
}
}
}
答案 0 :(得分:0)
将此添加到您的on create ....
dilemasListView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Intent myIntent = new Intent(activityname.this, nextactivity.class);
startActivityForResult(myIntent, 0);
}
}
});
答案 1 :(得分:0)
使用setOnItemClickListener。在这个onitemclick里面你可以编写新活动调用的代码。
dilemasListView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Intent i = new Intent();
i.setclass(current_activity_name.this, next_activity.class);
startActivity(i);
}
}
答案 2 :(得分:0)
所选项目的信息位于监听器的视图类中:
onItemClick(AdapterView<?> parent, View view,int position, long id)
您可以使用视图获取值。