Android Studio清单活动名称红色下划线

时间:2016-08-10 12:03:57

标签: android android-manifest

Android Studio Manifest活动名称高亮显示为红色

Manifest Activity Name Red

MainActivity.Java

public class MainActivity extends Activity {

    ListView list;
    String[] web = {
            "Finans",
            "Sınav",
            "Eğitim"
    };
    Integer[] imageId = {
            R.drawable.home,
            R.drawable.home,
            R.drawable.home
    };

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

        CustomList adapter = new CustomList(MainActivity.this, web, imageId);
        list = (ListView) findViewById(R.id.list);
        list.setAdapter(adapter);
    }
}

CustomList.Java

public class CustomList extends ArrayAdapter<String> {

    private final Activity context;
    private final String[] web;
    private final Integer[] imageId;
    public CustomList(Activity context,
                      String[] web, Integer[] imageId) {
        super(context, R.layout.activity_main, web);
        this.context = context;
        this.web = web;
        this.imageId = imageId;

    }
    @Override
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = context.getLayoutInflater();
        View rowView= inflater.inflate(R.layout.activity_main, null, true);
        TextView txtTitle = (TextView) rowView.findViewById(R.id.txt);

        ImageView imageView = (ImageView) rowView.findViewById(R.id.img);
        txtTitle.setText(web[position]);

        imageView.setImageResource(imageId[position]);
        return rowView;
    }
}

在清单文件中看到的活动名称下划线为红色。当我在手机上编译和运行它在手机上崩溃Android工作室没有向我显示错误。这个清单有什么问题我无法理解。

5 个答案:

答案 0 :(得分:0)

确保您的活动的软件包目录如下:com.deneme2.uygulama1.MainActivity

您在com.deneme2.uygulama1代码中定义了基本软件包名称(manifest)。 AndroidManifest.xml中定义的活动应该在此基础包之下。

答案 1 :(得分:0)

检查包路径是否是Activity类中的第一行。

enter image description here

然后在最后添加您的活动名称。

enter image description here

答案 2 :(得分:0)

确保您在项目的清单和项目包结构中处理以下几点:

属性: - android:name

&#34;实现活动的类的名称,Activity的子类。属性值应该是完全限定的类名(例如,&#34; com.example.project.ExtracurricularActivity&#34;)。但是,作为简写,如果名称的第一个字符是句点(例如,&#34; .ExtracurricularActivity&#34;),它将附加到元素中指定的包名称。 &#34;请参阅https://developer.android.com/guide/topics/manifest/activity-element.html

希望这有帮助

答案 3 :(得分:0)

检查清单和活动类中的packename。还有&#34; CustomList.Java&#34; class是一个ArrayAdapter。您无法在AndroidManifest.xml中将ArrayAdapter注册为Activity。所以,删除&#34; CustomList&#34; AndroidManifest.xml中的类注册。

答案 4 :(得分:-1)

在左上角点击文件,然后点击“无效缓存/重启”选项。 这对我有用。

enter image description here