ゲームにレベル セレクターを作成しようとしていますが、現在は機能していますが、一部の電話では非常に遅く、機能しない場合もあります (FC)。ヒープ メモリを使いすぎていることに気付きました。
私はAndroid devでまったく新しいので、ここに私のコードがあります。あなたが私を助けてくれることを願っています.
ビューページャーでのアクティビティ:
setContentView(R.layout.level_selector);
ViewPagerAdapter adapter = new ViewPagerAdapter(this);
ViewPager myPager = (ViewPager) findViewById(R.id.mypagerwontwork); //cool id huh
myPager.setAdapter(adapter);
myPager.setCurrentItem(0);
ポケットベル アダプターを表示:
public Object instantiateItem(View collection, int position) {
LayoutInflater inflater = (LayoutInflater) activity.getSystemService(activity.LAYOUT_INFLATER_SERVICE);
if(position == 0)
{
View layout = inflater.inflate(R.layout.world1, null);
final GridView gridview = (GridView) layout.findViewById(R.id.gridLvl);
gridview.setAdapter(new LevelAdapter(activity,"World1"));
gridview.setOnItemClickListener(itemClickListener);
((ViewPager) collection).addView(layout);
return layout;
}
グリッド ビュー アダプター:
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(100, 100));
if (mWorld.equals("World1"))
{
imageView.setImageResource(World1[position]);
}
有用な情報:
- それぞれ異なる背景を持つ3つの「ワールド」(ページを表示)があります
- 各「世界」には、1 から 15 までの番号が付いた 15 の画像があります。
- 画像サイズ: +- 12kb
- BGサイズは: +- 140kb
私はそれが明確であることを願っています。
ありがとう。