1

Hello Androidの本を読みました。プログラムはrawフォルダーにコピーしたサウンドを再生しますが、プログラムは実行されず、エラーが発生します。

エラー:

activity_main は解決できないか、フィールドではありません

temp を解決できないか、フィールドではありません

Audio.java

package org.example.audio;
import android.app.Activity;
import android.media.MediaPlayer;
import android.view.KeyEvent;
import android.os.Bundle;

public class Audio extends Activity{
    private MediaPlayer up;

    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
        up=MediaPlayer.create(this,R.raw.Guilty);
    }

    @Override
    public boolean onKeyDown(int keyCode,KeyEvent event){
  MediaPlayer mp;
      switch(keyCode){
  case KeyEvent.KEYCODE_DPAD_UP:
      mp=up;
      break;
  default:
      return super.onKeyDown(keyCode, event);
}
mp.seekTo(0);
mp.start();
return true;
    }
}

エラーを修正するのを手伝ってください。乾杯。

4

4 に答える 4

4

線を取り除く

import android.R; 

適切なパッケージのRをインポートします

この行で

setContentView(R.layout.activity_main);

行全体を削除し、 setContentView(R まで入力して ctrl+space を入力します。プロジェクト名を含むパッケージをインポートする必要があるいくつかのパッケージをインポートするように求められます (android.R ではありません)。

または行 import android.R; を削除します。プロジェクトをクリーンアップしてビルドするだけです

于 2012-09-22T15:39:48.140 に答える
1

最初に次の行を削除します。

import android.R;

次に、Eclipse を使用している場合は、プロジェクトをクリーンアップしてみてください。

プロジェクト->クリーン...

リソース ファイルの 1 つにエラーがある場合、++android.Rを押すと Eclipse が自動的にそのファイルをインポートしますが、これはイライラします。[パッケージ エクスプローラー] ウィンドウでフォルダーのエラー アイコンを再確認し、そこで見つかったエラーを修正します。CtrlShiftOres


このRファイルは、Java / Android プロジェクトの不可欠な側面です。activity_mainこれは、レイアウトやtempサウンド ファイルなどのリソースへの参照をコンパイラが格納する場所です。外部ファイルをインポートすると、別のプロジェクトでそれらを検索しようとしているため、参照 ( )Rを使用しようとするとエラーが発生します。RR.layout.activity_main

于 2012-09-22T15:39:11.983 に答える
1

これは、システムが R.java ファイルを解決できないためです。android.R を使用し、リソースを呼び出します。そのため、android.R を削除してから、プロジェクトをクリーンアップしてビルドします

于 2012-09-22T15:43:21.527 に答える
0

ご回答ありがとうございます。import android.R を削除し、別の曲を res/raw にコピーします (最初の投稿を編集します) が、プログラムに 2 つのエラーがあります。

有罪は解決できないか、フィールドではありません

temp music で android.R を削除すると、プログラムは実行されましたが、音が出ませんでした。サウンドを別のサウンドに変更し、プログラムが実行されませんでした:((なぜですか?

res/layout/activity_main.xml

<RelativeLayout 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" >

   <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/hello_world"
        tools:context=".MainActivity" />
</RelativeLayout>
于 2012-09-22T16:27:38.210 に答える