如何在android中获取另一个类的字符串数组对象值
这是我的基本适配器类 此类itemnames包含所有我想要的fooditemnames如何在android中获取另一个类的字符串数组对象值,android,Android,这是我的基本适配器类 此类itemnames包含所有我想要的fooditemnames enter code here public class MainMenulist extends BaseAdapter { int i; String qrimage; Bitmap bmp, resizedbitmap; Bitmap[] bmps; Activity activity = null; private LayoutInflater inflater; priv
enter code here
public class MainMenulist extends BaseAdapter {
int i;
String qrimage;
Bitmap bmp, resizedbitmap;
Bitmap[] bmps;
Activity activity = null;
private LayoutInflater inflater;
private ImageView[] mImages;
String[] itemimage;
TextView[] tv;
String itemname;
public String[] itemnames;
HashMap<String, String> map = new HashMap<String, String>();
public MainMenulist(Context context, JSONArray imageArrayJson) {
inflater=LayoutInflater.from(context);
this.mImages = new ImageView[imageArrayJson.length()];
this.bmps = new Bitmap[imageArrayJson.length()];
this.itemnames = new String[imageArrayJson.length()];
try {
for ( i = 0; i < imageArrayJson.length(); i++) {
JSONObject image = imageArrayJson.getJSONObject(i);
qrimage = image.getString("menuimage");
itemname = image.getString("menuname");
itemnames[i] = itemname;
byte[] qrimageBytes = Base64.decode(qrimage.getBytes());
bmp = BitmapFactory.decodeByteArray(qrimageBytes, 0,
qrimageBytes.length);
int width = 100;
int height = 100;
resizedbitmap = Bitmap.createScaledBitmap(bmp, width, height,
true);
bmps[i] = bmp;
mImages[i] = new ImageView(context);
mImages[i].setImageBitmap(resizedbitmap);
mImages[i].setScaleType(ImageView.ScaleType.FIT_START);
// tv[i].setText(itemname);
}
System.out.println(itemnames[i]);
System.out.println(map);
} catch (Exception e) {
// TODO: handle exception
}
}
public int getCount() {
return mImages.length;
}
public Object getItem(int position) {
return position;
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;
vi = inflater.inflate(R.layout.mainmenulistview, null);
TextView text=(TextView)vi.findViewById(R.id.menutext);
ImageView image=(ImageView)vi.findViewById(R.id.menuimage);
image.setImageBitmap(bmps[position]);
text.setText(itemnames[position]);
return vi;
}
}
在此处输入代码
公共类MainMenulist扩展了BaseAdapter{
int i;
字符串图像;
位图bmp,调整大小的位图;
位图[]bmps;
活动=空;
私人充气机;
私有图像视图[]模拟图像;
字符串[]项图像;
TextView[]电视;
字符串itemname;
公共字符串[]项名称;
HashMap=newHashMap();
公共主菜单列表(上下文上下文,JSONArray imageArrayJson){
充气器=充气器。从(上下文);
this.mImages=newImageView[imageArrayJson.length()];
this.bmps=新位图[imageArrayJson.length()];
this.itemnames=新字符串[imageArrayJson.length()];
试一试{
对于(i=0;i
这是另一个类ManagerHandset.java,我想在上面的类中打印itemnames[]。我想在ManagerHandset.java中获取itemnames。请帮助我编写一个类-
class MyMain扩展应用程序(){….}
当应用程序启动时,将调用该类。现在,您可以在该类中维护itemnames[]
的静态实例,如-
class MyMain extends Application(){
public static Object itemNames[];
}
现在,使用
MyMain.itemNames=this.itemNames实例化itemNames
代码>只要有项目名称的值
。现在,您的itemNames
可以在整个应用程序中使用。快乐编码 上面的代码执行listview。我想点击第一个项目意味着它进入另一个页面。第二项表示它转到另一页。。我怎么能给你呢?请告诉我你应该提供onItemClick()
太男人了。无论如何,我的答案中的代码适用于应用程序中的任何屏幕,因为它是一个应用范围。因此,您可以在应用程序中的任何位置使用它。确保类MyMain具有公共可见性,并且对象[]ItemName具有公共和静态修饰符。