使用SamConceapter的onclicklistener的Android列表
如何让用户单击列表菜单中的选定项,并在选择后将其转到另一个页面。我知道这个问题在stackoverflow中被问了很多,但我已经解决了大部分问题,我仍然迷路。希望我能在这里得到一些帮助 示例:当用户在列表中选择“a”时,它将转到另一个活动。如何在此代码中实现使用SamConceapter的onclicklistener的Android列表,android,Android,如何让用户单击列表菜单中的选定项,并在选择后将其转到另一个页面。我知道这个问题在stackoverflow中被问了很多,但我已经解决了大部分问题,我仍然迷路。希望我能在这里得到一些帮助 示例:当用户在列表中选择“a”时,它将转到另一个活动。如何在此代码中实现onclick listener 编辑后,我的意图以另一种方式不起作用。 我在main上添加了代码,但当我运行程序时,仍然无法单击 list.setOnItemClickListener(new AdapterView.OnI
onclick listener
编辑后,我的意图以另一种方式不起作用。我在main上添加了代码,但当我运行程序时,仍然无法单击
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
// write your start another activity code here
switch(i){
case 0:{
Intent intent1 = new Intent(LeftAndRightActivity.this, DisplayActivity.class);
startActivity(intent1);
}
}
}
});
list.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
//在此处编写“开始另一项活动”代码
开关(一){
案例0:{
Intent intent1=新的Intent(LeftAndRightActivity.this,DisplayActivity.class);
星触觉(intent1);
}
}
}
});
rightlistfragment.xml
public class RightListFragment extends ListFragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.rightlist, null);
}
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
SampleAdapter adapter = new SampleAdapter(getActivity());
adapter.add(new SampleItem("a"));
adapter.add(new SampleItem("b"));
adapter.add(new SampleItem("c"));
adapter.add(new SampleItem("d"));
adapter.add(new SampleItem("e"));
adapter.add(new SampleItem("f"));
setListAdapter(adapter);
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
// write your start another activity code here
switch(i){
case 0:{
startActivity(new Intent(RightListFragment.this,FragmentBindAcc.class));
}
}
}
TextView text1 = (TextView) getView().findViewById(R.id.loginName);
text1.setText("TEST");
}
private class SampleItem {
public String tag;
public int iconRes;
public SampleItem(String tag) {
this.tag = tag;
}
}
public class SampleAdapter extends ArrayAdapter<SampleItem> {
public SampleAdapter(Context context) {
super(context, 0);
}
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.rightrow, null);
}
ImageView icon = (ImageView) convertView.findViewById(R.id.arrow);
icon.setImageResource(getItem(position).iconRes);
TextView title = (TextView) convertView.findViewById(R.id.row_title);
title.setText(getItem(position).tag);
return convertView;
}
}
}
公共类RightListFragment扩展ListFragment{
CreateView上的公共视图(布局、充气机、视图组容器、捆绑包保存状态){
返回充气机。充气(R.layout.rightlist,空);
}
已创建ActivityState上的公共无效(Bundle savedInstanceState){
super.onActivityCreated(savedInstanceState);
SAMDUCCEAPTER适配器=新的SAMDUCCEAPTER(getActivity());
添加(新样本项(“a”);
添加(新样本项(“b”);
添加(新样本项(“c”);
添加(新样本项(“d”);
添加(新样本项(“e”);
添加(新样本项(“f”));
setListAdapter(适配器);
list.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
//在此处编写“开始另一项活动”代码
开关(一){
案例0:{
startActivity(新意图(RightListFragment.this,FragmentBindAcc.class));
}
}
}
TextView text1=(TextView)getView().findViewById(R.id.loginName);
text1.setText(“测试”);
}
私有类样本项{
公共字符串标签;
公共国际学院;
公共样本项(字符串标记){
this.tag=tag;
}
}
公共类SamdCapter扩展了ArrayAdapter{
公共SAMADCAPTER(上下文){
超级(上下文,0);
}
公共视图getView(int位置、视图转换视图、视图组父视图){
if(convertView==null){
convertView=LayoutInflater.from(getContext()).flate(R.layout.rightrow,null);
}
ImageView图标=(ImageView)convertView.findViewById(R.id.arrow);
icon.setImageResource(getItem(position).iconRes);
TextView title=(TextView)convertView.findViewById(R.id.row\u title);
title.setText(getItem(position.tag);
返回视图;
}
}
}
谢谢//试试这个方法
已创建ActivityState上的公共无效(Bundle savedInstanceState){
super.onActivityCreated(savedInstanceState);
SAMDUCCEAPTER适配器=新的SAMDUCCEAPTER(getActivity());
添加(新样本项(“a”);
添加(新样本项(“b”);
添加(新样本项(“c”);
添加(新样本项(“d”);
添加(新样本项(“e”);
添加(新样本项(“f”));
setListAdapter(适配器);
list.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
//在此处编写“开始另一项活动”代码
}
});
TextView text1=(TextView)getView().findViewById(R.id.loginName);
text1.setText(“测试”);
}
尝试在getView方法中提供onClickListner
title.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(context,anotherActivity.class);
context.startActivity(i);
}
});
getListView().setOnItemClickListener(新的AdapterView.OnItemClickListener{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
/*你的代码*/
};
})
您可以通过列表视图的setOnItemClickListener
获得此信息,如下所示:
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
// TODO Auto-generated method stub
switch(arg2){
case 0:{
startActivity(new Intent(getApplicationContext(),ActivityA.class));
}
break;
case 1:{
startActivity(new Intent(getApplicationContext(),ActivityB.class));
}
break;
case 2:{
ExampleQuestion.topicNo=3;
startActivity(new Intent(getApplicationContext(),ActivityC.class));
}
break;
}
list.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){
//TODO自动生成的方法存根
开关(arg2){
案例0:{
startActivity(新意图(getApplicationContext(),ActivityA.class));
}
打破
案例1:{
startActivity(新意图(getApplicationContext(),ActivityB.class));
}
打破
案例2:{
示例问题.topicNo=3;
startActivity(新意图(getApplicationContext(),ActivityC.class));
}
打破
}
您可以将其视为列表视图
包含A、B和C。当用户选择A时,它是案例0,对于B案例2和C案例3。RightListFragment RightListFragment=new RightListFragment();
RightListFragment rightListFragment = new RightListFragment();
rightListFragment.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int index, long l)
{
swtich(index)
{
// your implementaion
}
}
});
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView AdapterView、视图视图、整型索引、长l)
{
swtich(指数)
{
//你的实施
}
}
});
使用此代码
setOnItemClickListener(新的OnItemClickListener()
{
@覆盖
公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){
//TODO自动生成的方法存根
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
// TODO Auto-generated method stub
switch(arg2){
case 0:{
startActivity(new Intent(getApplicationContext(),ActivityA.class));
}
break;
case 1:{
startActivity(new Intent(getApplicationContext(),ActivityB.class));
}
break;
case 2:{
ExampleQuestion.topicNo=3;
startActivity(new Intent(getApplicationContext(),ActivityC.class));
}
break;
}
RightListFragment rightListFragment = new RightListFragment();
rightListFragment.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int index, long l)
{
swtich(index)
{
// your implementaion
}
}
});
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
// TODO Auto-generated method stub
if(arg2==0){
startActivity(new Intent(yourclass.this,ActivityA.class));
}
if(arg2=1){
startActivity(new Intent(yourclass.this,ActivityB.class));}
if(arg2==2)
{
startActivity(new Intent(yourclass.this,ActivityC.class));
}
}`