栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【发际线大作战】AndroidStudio使用Intent和ListView开发书签(spinner、intent、setOnItemLongClickListener、SimpleAdapter)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【发际线大作战】AndroidStudio使用Intent和ListView开发书签(spinner、intent、setOnItemLongClickListener、SimpleAdapter)

要求

完成如下图所示的Android应用程序,相当于一个网站的导航页面。一开始Activity中没有数据,通过选项菜单的“添加”选项,跳转到一个新页面,在此页面中,可以选择或输入网站数据项所对应的“图标”、“网站名”、“网址”信息。信息通过一个对话框确认后,添加到首页中。在首页中长按某个图标,可以打开一个快捷菜单,单击后,可跳转到对应的网站。

效果




Error 活动没在AndroidManifest注册

尝试一 清除数据后,冷启动
结果:依旧错误
尝试二在虚拟机管理界面删掉虚拟机,重新安装一个
结果:依旧错误
尝试三代码错误
调整:
①实例化方法有误

②显式调用不需要intent-filter

代码
//MainActivity.java
public class MainActivity extends AppCompatActivity {
    //第一个界面——显示联系人
    private Button bt; //添加按钮
    private ListView listView; //联系人列表
    private List name=new ArrayList(); //存放姓名
    private List num=new ArrayList(); //存放手机号
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        bt=findViewById(R.id.button_1); //添加按钮初始化
        listView=findViewById(R.id.listview); //联系人列表初始化
        ArrayAdapter adapter=new ArrayAdapter(MainActivity.this,android.R.layout.simple_list_item_1,name); //适配器初始化
        listView.setAdapter(adapter);//绑定适配器

        bt.setOnClickListener(new View.OnClickListener() { //监听添加按钮
            @Override
            public void onClick(View view) {
                Intent intent=new Intent(MainActivity.this,SecondActivity.class);
                startActivityForResult(intent,1);
            }
        });

        
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView adapterView, View view, int i, long l) {
                
                    int phoneNum=num.get(i);
                    Uri uri=Uri.parse("tel:"+phoneNum);
                    Intent intent=new Intent();
                    intent.setAction(Intent.ACTION_DIAL);
                    intent.setData(uri);
                    startActivity(intent);
                
            }
        });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { //返回内容
        super.onActivityResult(requestCode,resultCode,data);
        switch (requestCode){
            case 1:
                String returnedName=data.getStringExtra("name");
                int returnedNum=data.getIntExtra("num",0);
                
                name.add(returnedName);
                num.add(returnedNum);
                break;
            default:
                break;
        }
    }

}
//SecondAcitivity
public class SecondActivity extends AppCompatActivity {
    //第二个界面——添加联系人
    private Button button2; //返回按钮
    private EditText et1,et2; //姓名和手机号

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second_xml);

        button2=findViewById(R.id.button_1); //添加按钮初始化
        et1=findViewById(R.id.editText3);
        et2=findViewById(R.id.editText4);

        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if(et1.getText().toString() != null || et2.getText().toString() != null) {
                    //如果输入值不为空,返回Main_activity
                    Intent intent = new Intent(SecondActivity.this,MainActivity.class);
                    intent.putExtra("name",et1.getText().toString());
                    intent.putExtra("num",Integer.parseInt(et2.getText().toString()));//转化为int类型
                    setResult(RESULT_OK,intent); //返回内容
                    finish(); //结束活动
                }
            }
        });
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/974405.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号