0

私は現在、既存のサンプル プログラム (「Tic Tac Toe」ゲーム) を変更する最初の Android プロジェクトに取り組んでいます。公式サイトのチュートリアルを進めているのですが、サンプルコードを見ていると時間内にすべてを独力で理解できるとは思えません。

変更には、カスタム背景の選択、スコアリング システムの設定、時間制の「ブリッツ」モードの実装が含まれます。私の基本的な質問は次のとおりです。

  1. ゲームの背景色/画像を設定するコードはどのサブフォルダーにありますか?

  2. ファイル検索ウィンドウを開いてユーザーがこのカスタム背景画像を選択できるようにするインテント関数を作成する方法はありますか?

ここから始めたいと思います。質問が増えると思います。いつものように、どんな助けも大歓迎です。(ちなみにゲーム内のコードは、Android SDK for Eclipse に同梱されている標準サンプル問題のものです)。

更新 1:

これまでのところ、GameView というクラスでこれを見つけました。

mDrawableBg = getResources().getDrawable(R.drawable.lib_bg);
 setBackgroundDrawable(mDrawableBg);

mDrawableBg は Drawable オブジェクトです。この部分が何を参照しているのかわかりません:

R.drawable.lib_bg

このコードの背景を変更する適切な方法は何ですか?

更新 2:

私がいる場所は次のとおりです。

別の関数を引数として取る getDrawable 関数があります。

mDrawableBg = getResources().getDrawable(getImage());   

getImage() は、選択した画像を参照する整数を返すと想定されています。その関数のコード (これまでのところ) は次のとおりです。

public int getImage(){

    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);  
    intent.setType("image/*");
    startActivityForResult(intent, 10);

}

これは、ギャラリーを開いてユーザーに画像を選択させることを想定していますが、選択した画像に参照 ID を返す方法がわかりません。また、startActivityForResult 関数が正しく動作していないため、Activity クラスを適切に使用しているとは思えません。

4

1 に答える 1

1
  1. 背景はおそらく描画可能 ( /res/drawable-*) または色の値 ( など)のいずれかとして定義されます/res/values/colors.xml。のレイアウト ファイルの 1 つで参照されます/res/layout。レイアウト ファイルは、Java ソース フォルダー内のアクティビティ クラスの 1 つによって参照されます。

  2. ドローアブル リソース ID の配列をコードで宣言し、それを使用してダイアログやアクティビティを動的に生成できます。これには、 Horizo​​ntalScrollViewウィジェットが役立つ場合があります。インテントで選択アクティビティを開始する場合は、startActivityForResult代わりに を使用しstartActivityます。次に、 を使用してトップ ビューの背景を設定できますsetBackgroundResource()

于 2012-07-23T06:55:51.647 に答える