Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 第一次尝试添加ActionBar的应用程序开发人员破坏了一切_Java_Android_R.java File - Fatal编程技术网

Java 第一次尝试添加ActionBar的应用程序开发人员破坏了一切

Java 第一次尝试添加ActionBar的应用程序开发人员破坏了一切,java,android,r.java-file,Java,Android,R.java File,第一次应用程序开发人员和我正在努力跟进 在我到达之前一切都很顺利 我尝试按照支持Android 2.1及以上版本的说明进行操作。我去了SDK管理器,安装了v7 appcompat,设置了一个新的库项目,导入了appcompat,导入了appcompat,设置了构建路径,配置了构建路径,yadda yadda。基本上,我严格遵循以下步骤: 完成后,我调整了MainActivity以扩展ActionBarActivity,并更新了清单文件以使用主题Theme.AppCompat.Light。继续本教

第一次应用程序开发人员和我正在努力跟进

在我到达之前一切都很顺利

我尝试按照支持Android 2.1及以上版本的说明进行操作。我去了SDK管理器,安装了v7 appcompat,设置了一个新的库项目,导入了appcompat,导入了appcompat,设置了构建路径,配置了构建路径,yadda yadda。基本上,我严格遵循以下步骤:

完成后,我调整了MainActivity以扩展ActionBarActivity,并更新了清单文件以使用主题
Theme.AppCompat.Light
。继续本教程,我添加了一个带有搜索和设置按钮的ActionBar,但在尝试编译时,我只遇到了错误。最初,我疯狂的ctrl+shift+O'ing导入了android.R——我发现了一个固定的问题。但是,在删除该import语句并转到Project>Clean之后,它不会生成R.java文件。我查看了所有资源,没有名称中包含大写字母的文件。我的XML文件中也没有错误,对
@string/
的所有引用都存在于strings.XML文件中

任何关于下一步尝试的建议都将不胜感激。我也可以发布你怀疑可能是罪魁祸首的任何文件的内容。我自己花了大约4个小时试着调试这个,但我不知道下一步该怎么做

对于@bluebrain:

Description Resource Location Type
Unable to resolve target 'android-16' android-support-v7-appcompat Uknown Android Target Problem
对于@Gem_Ram:

AndroidManifest.xml

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

    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/Theme.AppCompat.Light" >
        <activity
            android:name="com.example.myfirstapp.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.example.myfirstapp.DisplayMessageActivity"
            android:label="@string/title_activity_display_message"
            android:parentActivityName="com.example.myfirstapp.MainActivity" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.myfirstapp.MainActivity" />
        </activity>
    </application>

</manifest>
DisplayMessageActivity.java(相同错误):

Strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">My First App</string>
    <string name="action_search">Search</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>
    <string name="edit_message">Enter a message</string>
    <string name="button_send">Send</string>
    <string name="title_activity_display_message">My Message</string>

</resources>

我的第一个应用程序
搜寻
设置
你好,世界!
输入消息
发送
我的留言
你还想看其他文件吗

更新:

更改
后导入android.support.v7.app.ActionBarActivity
导入到
导入android.support.v7.app.ActionBar我得到了大量无法解析的红色曲线,因为我实现和调用的所有方法都是Activity类的派生方法。我把它改回
导入android.support.v7.app.ActionBarActivity
并点击save,然后我的问题选项卡变得疯狂。首先是63个问题,然后是1个,然后是7个,然后是3个,然后是18个。。。问题包括一些进程失败,返回代码为负数,变量未定义,依赖关系不存在,。。。为了使Eclipse停止发作,我单击了Project>Clean,现在旧问题(“无法解决目标‘android-16’”)消失了,取而代之的是问题“R无法解决为变量”的7个实例


当然,这是我一直期待的问题,因为没有生成我的R.java文件。

请分享您的代码。我已成功运行此应用程序,没有任何问题。为供参考,请在此处添加我的文件:

清单文件:

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

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <!-- The main/home activity (it has no parent activity) -->
        <activity
            android:name="com.example.actionbar.HelloWorldMainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.example.actionbar.DisplayMessageActivity"
            android:label="@string/title_activity_display_message" 
            android:parentActivityName="com.example.actionbar.HelloWorldMainActivity" >
        <!-- Parent activity meta-data to support 4.0 and lower -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.actionbar.HelloWorldMainActivity" />
        </activity>
    </application>

</manifest>
主活动文件:

package com.example.actionbar;

import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.app.ActionBar;
import android.app.Activity;
import android.app.FragmentTransaction;
import android.app.ActionBar.Tab;
import android.content.Intent;

public class HelloWorldMainActivity extends Activity {
    public static final String EXTRA_MESSAGE = "com.example.actionbar.MESSAGE";

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_hello_world_main);

        final ActionBar actionBar = getActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        ActionBar.TabListener tabListener = new ActionBar.TabListener() {
            @Override
            public void onTabUnselected(Tab tab, FragmentTransaction ft) {
            }
            @Override
            public void onTabSelected(Tab tab, FragmentTransaction ft) {
            }
            @Override
            public void onTabReselected(Tab tab, FragmentTransaction ft) {
            }
        };
        for ( int i = 0; i < 4; i++ ){
            actionBar.addTab(actionBar.newTab().setText("Tab" + (i+1)).setTabListener(tabListener));
        }
    }

    public void sendMessage(View view) {
        Intent intent = new Intent(this, DisplayMessageActivity.class);
        EditText editText = (EditText) findViewById(R.id.edit_message);
        String message = editText.getText().toString();
        intent.putExtra(EXTRA_MESSAGE, message);
        startActivity(intent);
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.action_bar_main, menu);
        return super.onCreateOptionsMenu(menu); 
    }
    public boolean onOptionsItemsSelected(MenuItem item){
        switch (item.getItemId())
        {
        case R.id.action_search:
            openSearch();
            return true;
        case R.id.action_settings:
            openSettings();
            return true;
        case R.id.action_call:
            openCall();
            return true;
        default: 
                return super.onOptionsItemSelected(item);
        }
    }

    private void openCall() {
        // TODO Auto-generated method stub

    }

    private void openSettings() {
        // TODO Auto-generated method stub

    }

    private void openSearch() {
        // TODO Auto-generated method stub

    }
}
package com.example.actionbar;
导入android.os.Bundle;
导入android.view.Menu;
导入android.view.MenuInflater;
导入android.view.MenuItem;
导入android.view.view;
导入android.widget.EditText;
导入android.app.ActionBar;
导入android.app.Activity;
导入android.app.FragmentTransaction;
导入android.app.ActionBar.Tab;
导入android.content.Intent;
公共类HelloWorldMainActivity扩展了活动{
公共静态最终字符串EXTRA_MESSAGE=“com.example.actionbar.MESSAGE”;
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u hello\u world\u main);
最终ActionBar ActionBar=getActionBar();
actionBar.setNavigationMode(actionBar.NAVIGATION\u MODE\u选项卡);
ActionBar.TabListener TabListener=新建ActionBar.TabListener(){
@凌驾
已选择公共空页(选项卡,碎片事务ft){
}
@凌驾
已选择的公共事务(选项卡,碎片事务ft){
}
@凌驾
已重新选择公共无效页签(页签,碎片事务){
}
};
对于(int i=0;i<4;i++){
actionBar.addTab(actionBar.newTab().setText(“Tab”+(i+1)).setTabListener(tabListener));
}
}
公共无效发送消息(查看){
Intent Intent=新的Intent(这个,DisplayMessageActivity.class);
EditText EditText=(EditText)findViewById(R.id.edit_消息);
String message=editText.getText().toString();
intent.putExtra(额外消息,消息);
星触觉(意向);
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
MenuInflater充气机=getMenuInflater();
充气机。充气(右菜单。动作栏\主菜单);
返回super.onCreateOptions菜单(菜单);
}
已选择公共布尔值OnOptions项(菜单项项){
开关(item.getItemId())
{
案例R.id.行动搜索:
openSearch();
返回true;
案例R.id.action\u设置:
openSettings();
返回true;
案例R.id.行动电话:
openCall();
返回true;
违约:
返回super.onOptionsItemSelected(项目);
}
}
私有void openCall(){
//TODO自动生成的方法存根
}
私有void openSettings(){
//TODO自动生成的方法存根
}
私有void openSearch(){
//TODO自动生成的方法存根
}
}
Strings.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">ActionBar</string>
    <string name="edit_message">Enter a message</string>
    <string name="button_send">Send</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_search">Search</string>
    <string name="action_call">Call</string>
    <string name="title_activity_main">ActionBarMainActivity</string>
    <string name="title_activity_display_message">DisplayMessageActivity</string>

</resources>

操作栏
输入消息
发送
设置
你好,世界!
搜寻
呼叫
ActionBarMain活动
显示消息活动

请分享您的代码。我已成功运行此应用程序,没有任何问题。为供参考,请在此处添加我的文件:

清单文件:

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

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <!-- The main/home activity (it has no parent activity) -->
        <activity
            android:name="com.example.actionbar.HelloWorldMainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.example.actionbar.DisplayMessageActivity"
            android:label="@string/title_activity_display_message" 
            android:parentActivityName="com.example.actionbar.HelloWorldMainActivity" >
        <!-- Parent activity meta-data to support 4.0 and lower -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.actionbar.HelloWorldMainActivity" />
        </activity>
    </application>

</manifest>
主活动文件:

package com.example.actionbar;

import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.app.ActionBar;
import android.app.Activity;
import android.app.FragmentTransaction;
import android.app.ActionBar.Tab;
import android.content.Intent;

public class HelloWorldMainActivity extends Activity {
    public static final String EXTRA_MESSAGE = "com.example.actionbar.MESSAGE";

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_hello_world_main);

        final ActionBar actionBar = getActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        ActionBar.TabListener tabListener = new ActionBar.TabListener() {
            @Override
            public void onTabUnselected(Tab tab, FragmentTransaction ft) {
            }
            @Override
            public void onTabSelected(Tab tab, FragmentTransaction ft) {
            }
            @Override
            public void onTabReselected(Tab tab, FragmentTransaction ft) {
            }
        };
        for ( int i = 0; i < 4; i++ ){
            actionBar.addTab(actionBar.newTab().setText("Tab" + (i+1)).setTabListener(tabListener));
        }
    }

    public void sendMessage(View view) {
        Intent intent = new Intent(this, DisplayMessageActivity.class);
        EditText editText = (EditText) findViewById(R.id.edit_message);
        String message = editText.getText().toString();
        intent.putExtra(EXTRA_MESSAGE, message);
        startActivity(intent);
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.action_bar_main, menu);
        return super.onCreateOptionsMenu(menu); 
    }
    public boolean onOptionsItemsSelected(MenuItem item){
        switch (item.getItemId())
        {
        case R.id.action_search:
            openSearch();
            return true;
        case R.id.action_settings:
            openSettings();
            return true;
        case R.id.action_call:
            openCall();
            return true;
        default: 
                return super.onOptionsItemSelected(item);
        }
    }

    private void openCall() {
        // TODO Auto-generated method stub

    }

    private void openSettings() {
        // TODO Auto-generated method stub

    }

    private void openSearch() {
        // TODO Auto-generated method stub

    }
}
package com.example.actionbar;
感应电动机
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">ActionBar</string>
    <string name="edit_message">Enter a message</string>
    <string name="button_send">Send</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_search">Search</string>
    <string name="action_call">Call</string>
    <string name="title_activity_main">ActionBarMainActivity</string>
    <string name="title_activity_display_message">DisplayMessageActivity</string>

</resources>
Unable to resolve target 'android-16' android-support-v7-appcompat Uknown Android Target Problem
target=android-19
target=android-16
target=android-19