【Android|AS】Android Studio中使遇到的问题

Android Studio中使遇到的问题

1. listview只显示最后一张图片和文字

修改前代码

//修改前 
private List<Map<String,Object>> getData()
 {
 List<Map<String , Object>> list = new ArrayList< >();
 Map<String,Object> map = new HashMap< >();
 map.put("img",R.drawable.p1);
 map.put("title","第一");
 map.put("info","第一个角色");
 list.add(map); 
map.put("img",R.drawable.p2);
 map.put("title","第2");
 map.put("info","第2个角色");
 list.add(map); 
map.put("img",R.drawable.p3);
 map.put("title","第3");
 map.put("info","第3个角色");
 list.add(map); 
map.put("img",R.drawable.p4);
 map.put("title","第4");
 map.put("info","第4个角色");
 list.add(map); 
map.put("img",R.drawable.p5);
 map.put("title","第5");
 map.put("info","第5个角色");
 list.add(map); 
map.put("img",R.drawable.p6);
 map.put("title","第6");
 map.put("info","第6个角色");
 list.add(map); 
map.put("img",R.drawable.p7);
 map.put("title","第7");
 map.put("info","第7个角色");
 list.add(map); 
map.put("img",R.drawable.p8);
 map.put("title","第8");
 map.put("info","第8个角色");
 list.add(map); 
map.put("img",R.drawable.p9);
 map.put("title","第9");
 map.put("info","第9个角色");
 list.add(map); 
return list;
 }
}

遇到问题

插入图片和文字运行后显示9张list,但是都是重复的 p9与"第九个角色"

出现原因

map中使用的HashMap为重置

修改后代码

private List<Map<String,Object>> getData()
    {
        List<Map<String , Object>> list = new ArrayList< >();
        Map<String,Object> map = new HashMap< >();
        map.put("img",R.drawable.p1);
        map.put("title","第一");
        map.put("info","第一个角色");
        list.add(map);

        map = new HashMap<>();//重置
        map.put("img",R.drawable.p2);
        map.put("title","第2");
        map.put("info","第2个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p3);
        map.put("title","第3");
        map.put("info","第3个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p4);
        map.put("title","第4");
        map.put("info","第4个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p5);
        map.put("title","第5");
        map.put("info","第5个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p6);
        map.put("title","第6");
        map.put("info","第6个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p7);
        map.put("title","第7");
        map.put("info","第7个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p8);
        map.put("title","第8");
        map.put("info","第8个角色");
        list.add(map);

        map = new HashMap<>();
        map.put("img",R.drawable.p9);
        map.put("title","第9");
        map.put("info","第9个角色");
        list.add(map);

        return list;
    }

参考链接

一个导致ListView中item内容全部重复的可能原因,有点让我啼笑皆非_一条独龙的博客-CSDN博客

2. menu中item被标红

问题描述

在使用书本上xml代码的时候,mune可以正常使用,但item被标红并弹出错误。运行时闪退。

解决

问题出现在我在layout界面下创建文件,所以没有menu布局,也没有item组件。

参考链接

android studio 没有menu文件夹,创建menu菜单 - 爱码网

3. 组装menu和layout组合使用方法

参考链接

android应用开发详解(二)-----------Layout和Menu的使用_hulan_baby的博客-CSDN博客

4.报错Could not identify launch activity: Default Activity not found

问题描述

执行文件时候提示上述错误,并无法下载文件

修改前manifest代码

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.viewandlayout">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication">
        <activity android:name=".diolog">
        <activity android:name=".listview" />
        <activity android:name=".gridview" />
        <activity android:name=".mune_changecolor" />
    </application>
</manifest>

错误原因

在主活动中缺少 与 android:exported

修改后代码

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.viewandlayout">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication">
        <activity
            android:name=".diolog"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".listview" />
        <activity android:name=".gridview" />
        <activity android:name=".mune_changecolor" />
    </application>
</manifest>

参考链接

Could not identify launch activity: Default Activity not found_Scarlett2025的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值