2011-07-13 8 views
2

を新しい画面を開き、私はボタンのクリックで新しい画面を開く方法を学ぶためにこの記事を、次の午前:
http://learnandroid.blogspot.com/2008/01/opening-new-screen-in-android.htmlどのようにAndroidの

しかし、私はこのような3つのエラーメッセージ取得しています:

 Description Resource Path Location Type 
R cannot be resolved to a variable screen1.java /screen1/src/test/android line 20 Java Problem 
R cannot be resolved to a variable screen1.java /screen1/src/test/android line 21 Java Problem 
R cannot be resolved to a variable screen2.java /screen1/src/test/android line 13 Java Problem 
R cannot be resolved to a variable screen2.java /screen1/src/test/android line 14 Java Problem 
Unparsed aapt error(s)! Check the console for output. screen1  line 1 Android ADT Problem 

これは私が今までやっていることである:screen1.java

package test.android; 


import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 




public class screen1 extends Activity 
{ 
    public void onCreate(Bundle icicle) 
    { 
     super.onCreate(icicle); 
     setContentView(R.layout.screen1); 
     Button b = (Button)findViewById(R.id.btnClick); 
     b.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View arg0) { 
     Intent i = new Intent(screen1.this, screen2.class); 
     startActivity(i); 
     } 
     }); 
    } 
} 

screen2.java

package test.android; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class screen2 extends Activity 
{ 
    public void onCreate(Bundle icicle) 
    { 
     super.onCreate(icicle); 
     setContentView(R.layout.screen2); 
     Button b = (Button) findViewById(R.id.btnClick2); 
     b.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View arg0) { 
     setResult(RESULT_OK); 
     finish(); 
     } 
     }); 
    } 
} 

のAndroidManifest.xml

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


    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
    <activity android:name=".Screen1" android:label="Screen 1"> 
     <activity android:name=".screen1" 
        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> 
     <activity android:name=".Screen2" android:label="Screen 2"> 
     </activity> 

    </application> 
</manifest> 

screen1.xml

あなたのアイデアを与える

screen2.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
> 
<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="You are in the New Screen" 
/> 
<Button 
    android:id ="@+id/btnClick2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Close" 
/> 

</LinearLayout> 

、これは私のプロジェクトのスクリーンショット

http://img39.imageshack.us/img39/8883/projscreen.jpg

でみんなを助けてください!

+3

プロジェクトをきれいにして再構築してください。自動的に生成されるはずです。 – MByD

答えて

3

代わりのid ="@+id/btnClick"として、あなたのボタンIDを設定し、あなたが問題を持っている場合は、続くチュートリアルのコメントを読むことは常に良い考えですandroid:id ="@+id/btnClick" を使用して、この修正プログラムはちょうど3-4ダウンコメントされました。

また、参照される行番号:screen1.javaで18、screen2.javaで13の場合、ボタンIDを参照すると問題が発生することがわかります。

+0

こんにちは、私はちょうどそれらの変更を加え、現在5つのエラーを取得します。上記の私のコードを参照してください(私はちょうど上の投稿で自分のコードを更新しました)。 – super

+0

@MByDが示唆していることを、プロジェクトを右クリックして「選択したプロジェクトをクリーンアップ」を選択し、もう一度実行してみてください。 – Marmoy

+0

私はEclipseを使用しています。はい、インポートしたandroid.Rを削除してもきれいでしたが、上記の5つのエラーが表示されました。 – super

0

私の最初の答えはナンセンスでした。しかし、私はあなたのマニフェスト内のscreen1アクティビティの中でscreen1アクティビティを宣言していることに気付きました。ラベルが "@ string/app_name"でインテントフィルタが1の場合のみ必要です。

これを変更して、プロジェクトをきれいにして、変更があれば教えてください。

+0

私はこれがR.idからR.layoutからidを取って差をつけるとは思わない。 R.layoutはres/layout – JustDanyul

+1

Ahのファイル名に基づいて自動的に生成されます。実話。私は常にすべてを自分に適切なIDを与えるという良い練習を楽しんできました。しかし、それは何も壊れないと思う。 – Matt

+0

こんにちは、私はちょうど上記の投稿で自分のコードを更新しました。私のプロジェクトのスクリーンショットを見て、適切な場所/場所にすべてのファイルがあるかどうかを教えてください。 – super

-1

あなたのAndroidのインポートは何ですか。 R.javaが生成されないと思いますか?それは...ですか?

私はちょうど私の日食でそれに取り組んだ私はインポートアンドロイドを見つけませんでしたか?それは完全にうまくいった。

+0

ちょうどそのアンドロイドを取り除きます。ureからのものをインポートして、きれいにして、Eclipseを使用している場合はプロジェクトをビルドしてください。 – Rovin

+0

import android.Rを削除しましたが、上記で更新した5つのエラーが表示されました。ご覧ください。 – super

+0

あなたのIDEは何ですか?日食かNetbeansか何か他の何かか。 R.javaファイルが生成されていますか? – Rovin

関連する問題