单击ListView中的项目是否可以启动新活动?

用户123456

我只是想知道我是否能够通过单击ListView中的项目来启动新活动。

到目前为止,我已经编写了以下代码:

package awad865.project.ContactManager1;


import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageButton;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.example.contactmanager1.R;
import android.widget.AdapterView;

public class MainActivity extends Activity {

    private ListView listView;
    private ImageButton button1;
    private ImageButton button2;
    private ImageButton button3;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        getActionBar().setDisplayShowTitleEnabled(false);
        getActionBar().setDisplayShowHomeEnabled(false);

        listView = (ListView)findViewById(R.id.main_contact_listview);
        button1= (ImageButton)findViewById(R.id.button_search);
        button2= (ImageButton)findViewById(R.id.button_addcontact);
        button3= (ImageButton)findViewById(R.id.button_options);



        setUpListView();

    }

    private void setUpListView(){
        List <Contact> displayList = new ArrayList<Contact>();
        displayList.add(new Contact("Anmol","Wadhwa","53743632"));
        displayList.add(new Contact("Juhi","Goswami","4234232"));
        displayList.add(new Contact("Laurence","Baldwick","243232"));



        ListAdapter listAdapter = new CustomListAdapter(MainActivity.this,displayList);
        listView.setAdapter(listAdapter);

    }

    private class CustomListAdapter extends ArrayAdapter<Contact>{

        private Context _context;
        private List<Contact> _contacts;

        public CustomListAdapter(Context context, List<Contact> contacts){
            super(context,android.R.layout.simple_list_item_1,contacts);

            _context = context;
            _contacts = contacts;

        }

        public View getView(int position, View convertView,ViewGroup parent){
            //Create a layout inflater to inflate our xml layout for each item in the list
            LayoutInflater inflater = (LayoutInflater) _context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

            //Inflate the list item layout. Keep a reference to the inflated view.
            //No root view specified
            View listItemView = inflater.inflate(R.layout.custom_list_item_layout,null);

            //Access TextView elements inside the view (note we must specify the parent view
            //to look in)
            TextView firstName =  (TextView)listItemView.findViewById(R.id.list_item_firstname);
            TextView lastName =  (TextView)listItemView.findViewById(R.id.list_item_lastname);
            TextView number =  (TextView)listItemView.findViewById(R.id.list_item_number);

            //Set the text for each textview (use the position arugment to find the appropriate element in the list)
            firstName.setText(_contacts.get(position).getFirstName());
            lastName.setText(_contacts.get(position).getLastName());
            number.setText(_contacts.get(position).getNumber());

            return listItemView;
        }

    }

    public boolean onOptionsItemSelected(MenuItem item){
        switch(item.getItemId()){
        case R.id.action_groups:
            Intent groupIntent = new Intent(this,Groups.class);
            startActivity(groupIntent);
            return true;

        case R.id.action_favourites:
            Intent favouriteIntent = new Intent(this,Favourites.class);
            startActivity(favouriteIntent);
        default:
            return super.onOptionsItemSelected(item);

        }


    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main_activity_actions, menu);
        return true;
    }



    public void addContact(View view){
        Intent intent = new Intent(this,AddContact.class);
        startActivity(intent);

    }
}



class listItemClickedListener implements AdapterView.OnItemClickListener{

    @Override
    public void onItemClick(AdapterView<?> parentView, View clickedView, int clickedViewPosition, long id) {
        // TODO Auto-generated method stub
        Intent contactInfoIntent = new Intent(this, ContactInformation.class);

    }
}

我只是想知道是否能够在类listItemClickListener中的onItemClick()方法内启动新活动。任何帮助将不胜感激,因为编译器不允许我启动新的意图。

ρяσsρєяK

在ListView项上启动Activity单击为:

步骤1:

通过将listItemClickedListener类的实例传递为onItem来添加OnItemClickListener:

....
listView.setAdapter(listAdapter);
listView.setOnItemClickListener(new listItemClickedListener());

第2步:

从onItemClick启动Activity为:

 Intent contactInfoIntent = new Intent(clickedView.getContext(), 
                                               ContactInformation.class);
  clickedView.getContext().startActivity(contactInfoIntent);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

启动新活动时,是否可以从活动中释放内存?

来自分类Dev

如何从ListView项目单击事件显示的对话框中的每个肯定按钮启动不同的活动

来自分类Dev

在导航抽屉项目上启动新活动,请单击

来自分类Dev

ListView项目打开新活动

来自分类Dev

单击导航抽屉菜单中的项目后,打开新的活动

来自分类Dev

如何在导航抽屉中单击项目打开新活动

来自分类Dev

是否可以使用默认问题启动新的Redmine项目?

来自分类Dev

如何在CustomAdapter中以及声明Listview的活动中获取Listview中项目的单击事件

来自分类Dev

单击按钮后启动新活动

来自分类Dev

是否有比调用onClickListener更好的方法来启动按钮单击上的新活动?

来自分类Dev

通过单击查看检查是否使用 Espresso 启动了新活动

来自分类Dev

单击 ListView 中的项目时,在另一个活动中显示列表

来自分类Dev

单击通知栏是否创建新活动?

来自分类Dev

我希望listview项目在新活动中显示相关项目的数据

来自分类Dev

单击导航抽屉中的某个项目后尝试启动“地图活动”

来自分类Dev

小部件崩溃并且无法通过单击小部件中的按钮来启动新活动

来自分类Dev

如何在滑动菜单中的项目单击上打开新活动?

来自分类Dev

我可以使用按钮单击事件从服务中打开新的活动吗?

来自分类Dev

如何使 ListView 中的每个项目都可以点击以调用另一个活动?

来自分类Dev

单击以在网格视图中启动新活动

来自分类Dev

为什么单击按钮后无法启动新活动?

来自分类Dev

单击列表视图项启动新活动不起作用

来自分类Dev

ListView&onItemClick-单击时,打开新活动

来自分类Dev

单击时从ListView继续进行新活动

来自分类Dev

单击通知是否没有启动预期的活动?

来自分类Dev

单击通知是否没有启动预期的活动?

来自分类Dev

单击回收站项目时如何打开新活动

来自分类Dev

如何在android中启动新活动

来自分类Dev

在Kotlin的AsyncTask中启动新活动

Related 相关文章

  1. 1

    启动新活动时,是否可以从活动中释放内存?

  2. 2

    如何从ListView项目单击事件显示的对话框中的每个肯定按钮启动不同的活动

  3. 3

    在导航抽屉项目上启动新活动,请单击

  4. 4

    ListView项目打开新活动

  5. 5

    单击导航抽屉菜单中的项目后,打开新的活动

  6. 6

    如何在导航抽屉中单击项目打开新活动

  7. 7

    是否可以使用默认问题启动新的Redmine项目?

  8. 8

    如何在CustomAdapter中以及声明Listview的活动中获取Listview中项目的单击事件

  9. 9

    单击按钮后启动新活动

  10. 10

    是否有比调用onClickListener更好的方法来启动按钮单击上的新活动?

  11. 11

    通过单击查看检查是否使用 Espresso 启动了新活动

  12. 12

    单击 ListView 中的项目时,在另一个活动中显示列表

  13. 13

    单击通知栏是否创建新活动?

  14. 14

    我希望listview项目在新活动中显示相关项目的数据

  15. 15

    单击导航抽屉中的某个项目后尝试启动“地图活动”

  16. 16

    小部件崩溃并且无法通过单击小部件中的按钮来启动新活动

  17. 17

    如何在滑动菜单中的项目单击上打开新活动?

  18. 18

    我可以使用按钮单击事件从服务中打开新的活动吗?

  19. 19

    如何使 ListView 中的每个项目都可以点击以调用另一个活动?

  20. 20

    单击以在网格视图中启动新活动

  21. 21

    为什么单击按钮后无法启动新活动?

  22. 22

    单击列表视图项启动新活动不起作用

  23. 23

    ListView&onItemClick-单击时,打开新活动

  24. 24

    单击时从ListView继续进行新活动

  25. 25

    单击通知是否没有启动预期的活动?

  26. 26

    单击通知是否没有启动预期的活动?

  27. 27

    单击回收站项目时如何打开新活动

  28. 28

    如何在android中启动新活动

  29. 29

    在Kotlin的AsyncTask中启动新活动

热门标签

归档