package lyl.menu;
import lyl.dc.R;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.TextView;
import android.widget.Gallery.LayoutParams;
import android.widget.GridView;
import android.widget.ImageView;
public class MenuActivity extends Activity {
Gallery gallery;
int index =0;
boolean boo =true;
TextView text;
int bitmap [] ={R.drawable.gallery1,R.drawable.gallery2,R.drawable.gallery3,R.drawable.gallery4,
R.drawable.gallery5,R.drawable.gallery6,R.drawable.erguotou,R.drawable.zicaitang,R.drawable.mifan};
String st[] ={"水晶虾仁:188元","糖醋带鱼:388元","鱼香肉丝:588元","点心:88元","糖醋排骨:168元","北京烤鸭:888元","洪兴二锅头:128元","紫菜蛋汤:68元","米饭:10元"};
Handler handler =new Handler(){
public void handleMessage(Message msg) {
if(msg.what==index){
int a =index%bitmap.length;
int b =index%st.length;
System.out.println(a+"//////////////////");
System.out.println(bitmap[a]+"//////");
gallery.setSelection(a);
text.setText(st[b]);
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.menu);
text=(TextView)findViewById(R.id.menu_text1);
gallery=(Gallery)findViewById(R.id.menu_gallery);
gallery.setAdapter(new ImageAdapter(MenuActivity.this));
new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
while(boo){
handler.sendEmptyMessage(index);
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
index++;
}
}
}).start();
}
class ImageAdapter extends BaseAdapter{
Context context;
public ImageAdapter(Context context){
this.context=context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return Integer.MAX_VALUE;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView image =new ImageView(context);
image.setLayoutParams(new Gallery.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
image.setImageResource(bitmap[position]);
return image;
}
}
}
老是报数组下标越界 帮我看下怎么回事
06-11 13:58:14.175: E/AndroidRuntime(2933): FATAL EXCEPTION: main
06-11 13:58:14.175: E/AndroidRuntime(2933): java.lang.ArrayIndexOutOfBoundsException
06-11 13:58:14.175: E/AndroidRuntime(2933): at lyl.menu.MenuActivity$ImageAdapter.getView(MenuActivity.java:97)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.widget.Gallery.makeAndAddView(Gallery.java:748)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.widget.Gallery.fillToGalleryRight(Gallery.java:700)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.widget.Gallery.layout(Gallery.java:631)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.widget.Gallery.onLayout(Gallery.java:339)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.view.View.layout(View.java:7175)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.widget.RelativeLayout.onLayout(RelativeLayout.java:912)
06-11 13:58:14.175: E/AndroidRuntime(2933): at android.view.View.layout(View.java:7175)