Angry Birds、Farm Tower、Cut the Rope(世界を選択する部分、またはギャラリーウィジェットに似た部分)のような私のゲームのためのレベルのスクリーンを作りたいと思います。私はこれを攻撃する最も簡単な方法が何であるか知りたかったのです。レベルセレクタ画面、ファームタワー、怒っている鳥、カットロープなど?
Gallery
ビューを変更するにはどうすればよいですか?
Angry Birds、Farm Tower、Cut the Rope(世界を選択する部分、またはギャラリーウィジェットに似た部分)のような私のゲームのためのレベルのスクリーンを作りたいと思います。私はこれを攻撃する最も簡単な方法が何であるか知りたかったのです。レベルセレクタ画面、ファームタワー、怒っている鳥、カットロープなど?
Gallery
ビューを変更するにはどうすればよいですか?
ここでは、Gallery
ビューを使用してレベルセレクタを作成する方法を示します。 http://developer.android.com/resources/tutorials/views/hello-gallery.html
だから一番上にあなたがあなたのレベルのスクリーンがあるでしょう:
は、あなたがコードベースを持っているだけのように、この例に従ってみましょう。ユーザーがクリックすると、このメソッドは起動されます(この例からまっすぐ取り出されます)。私はあなたがデータベースを使用したりしていない場合は、自分のレベルを格納しているか分からないため、ここでも非常に基本的な例をpublic void startLevel(int position){
Resources res = getResources();
String[] levels = res.getStringArray(R.array.level_classes);
try{
Intent i = new Intent(this, Class.forName(levels[position]));
startActivity(i);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
:
gallery.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v, int position, long id) {
startLevel(position);
}
});
たぶんあなたstartLevelは次のようになりますさらに、各レベルのクラスはおそらく異なるパッケージ(例えばcom.game.levelone、com.game.leveltwo)にあり、ClassNotFoundException
を取得しないようにクラスパッケージをインポートする必要がありますが、これはあなたが正しい方向にスタートさせるはずです。
Viewsフォームa hierarchy。 Gallery
をGridView
にする。
あなたは、ギャラリーのチュートリアルからコードを適応させるLevelSetView
にImageView
を変更し、BaseAdapter
を拡張LevelSetAdapter
を作成し、そのgetView
メソッドをオーバーライドしたい場合。 ここは始まりです。 referenceまたはこのvideo 2分で:より良いアダプターを理解することが
public class HelloLevelsGalleryActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Gallery g = (Gallery) findViewById(R.id.gallery);
g.setAdapter(new LevelSetAdapter(this));
}
。
また、質問はhereと尋ねられました。
このビューを作成する運がありますか?シェアしてください。 thnx –
本当に。まだ答えを探しています! –