2013-03-12 59 views
1

我到處搜索,但無法找到我的問題的答案。我對這個完全陌生,而且在我頭腦中。我只是從Android開發站點上做了基本的「我的第一個應用程序教程」。即使代碼與示例中的代碼完全相同,本教程也會導致錯誤。在控制檯中顯示的錯誤是:Android應用開發我的第一個應用示例錯誤

[2013-03-12 15:33:36 - MyFirstApp] D:\Android Development\MyFirstApp\res\menu  \main.xml:3: error: Error: No resource found that matches the given name (at 'title' with value '@string/action_settings'). 
[2013-03-12 15:34:38 - MyFirstApp] W/ResourceType(6352): Bad XML block: header size  311 or total size 5346560 is larger than data size 0 

我改變的唯一的東西是教程告訴我要改變的東西。 Activity_main.xmlstrings.xml。我從來沒有改變任何東西在main.xml。在Package Explorer它顯示一個紅色的X旁邊MainActivity>onCreate(Bundle)onCreateOptionsMenu(Menu)這裏是代碼MainActiviy在括號錯誤

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); (error here red underline under R) 
} 


@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, menu); (error here red underline under R) 
    return true; 
} 

}

我做了什麼錯?我剛剛開始學習,我甚至無法讓教程正確運行!

這裏是activity_main.xml中和strings.xml中,我改變了方向如下:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="horizontal" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context=".MainActivity" > 
<EditText android:id="@+id/edit_message" 
android:layout_weight="1" 
android:layout_width="0dp" 
android:layout_height="wrap_content" 
android:hint="@string/edit_message" /> 
<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/button_send" /> 

</LinearLayout> 


<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="horizontal" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context=".MainActivity" > 
<EditText android:id="@+id/edit_message" 
android:layout_weight="1" 
android:layout_width="0dp" 
android:layout_height="wrap_content" 
android:hint="@string/edit_message" /> 
<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/button_send" /> 

</LinearLayout> 

感謝您的幫助。

+0

請確保在Project.properties中配置的API版本與您的代碼相兼容 – 2013-03-12 17:08:26

+0

您確定您的strings.xml是正確的嗎?看起來不對我。 – DigCamara 2013-03-12 17:12:04

+0

在Eclipse中,使用「問題」窗口幫助跟蹤這樣的災難性故障。當'R無法解析爲變量'時,它可以像XML文件中的錯字或更復雜的錯誤資源或庫一樣簡單。忽略在解決根本問題後他們將消失的「R」錯誤。 – Sam 2013-03-12 17:12:26

回答

2

在控制檯日誌:

Error: No resource found that matches the given name (at 'title' with value '@string/action_settings

意味着你將需要內部res/values/strings.xml文件添加一個action_settings字符串作爲

<resources> 
    <!-- Your other strings --> 
    <string name="action_settings">Action Settings</string> 
</resources> 
0

的代碼看起來不錯,但XML有一些問題。

  1. 您的代碼引用了activity_main,但您使用的文件名是Activity_main。由於匹配區分大小寫,Android建議您僅在文件名中使用小寫字母。
  2. 您似乎列出了兩次Activity_main.xml。 Strings.xml根本就沒有。出於這個原因,不可能知道問題是什麼。
  3. 您沒有列出res/menu目錄中的任何文件。如果你正在創建一個選項菜單,你需要res/menu/menu.xml。
0

我自己對Android編程還很陌生,但無論如何都會盡力幫助。

R通常是自動生成的;它下面的紅線通常表示它已經消失。

大部分時間你會收到這個錯誤,因爲你在String.xml文件中發生錯誤。

根據您的錯誤消息,看起來好像「action_settings」字符串有錯誤。確保您沒有包含任何撇號或發生任何其他語法錯誤。

相關問題