Java 如何解决无法应用产品中的以下错误Product()?

Java 如何解决无法应用产品中的以下错误Product()?,java,android,Java,Android,在这里,我声明了产品类变量并分配了它 product.java public class Product { String[] name= new String[100]; int price; int image; boolean box; Product(String[] _describe, int _price, int _image, boolean _box) { name = _describe; pric

在这里,我声明了产品类变量并分配了它

product.java

public class Product {
    String[] name= new String[100];
    int price;
    int image;
    boolean box;


    Product(String[] _describe, int _price, int _image, boolean _box) {
        name = _describe;
        price = _price;
        image = _image;
        box = _box;
    }
}
这是我的产品类。在上述编码中我应该更改什么?? 公共类MainActivity扩展了活动{ 字符串[]数据=新字符串[]{“编号1”、“编号2”、“编号3”、“编号4”、“编号5”、“编号6”}; String[]columnTags=新字符串[]{“ProcessName”、“IpItem”、“IpColor”、“OpItem”、“OpColor”、“PlanQty”、“DcQty”、“RecQty”、“RtQty”}; ArrayList产品=新的ArrayList(); ListAdapter1-boxAdapter

/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    fillData();
    boxAdapter = new ListAdapter1(this, products);

    ListView lvMain = (ListView) findViewById(R.id.lvMain);
    lvMain.setAdapter(boxAdapter);
}

void fillData() {
    for (int i = 0; i <= 20; i++) {
        products.add(new Product(columnTags, i * 100,i * 553
               , false));
    }
}

public void showResult(View v) {
    String result = "Selected Product are :";
    int totalAmount=0;
    for (Product p : boxAdapter.getBox()) {
        if (p.box){
            result += "\n" + p.name;
            totalAmount+=p.image;
        }
    }
    String total="Total="+totalAmount;
   // Toast.makeText(this, result+"\n"+"Total Amount:="+totalAmount, Toast.LENGTH_LONG).show();
    Bundle bundle=new Bundle();
    bundle.putString("res",result);
    bundle.putString("tot",total);
    Intent intent = new Intent(MainActivity.this,MainActivity2Activity.class);
    intent.putExtras(bundle);
    startActivity(intent);
}
/**在首次创建活动时调用*/
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fillData();
boxAdapter=新列表适配器1(此,产品);
ListView lvMain=(ListView)findViewById(R.id.lvMain);
lvMain.setAdapter(boxAdapter);
}
void fillData(){

对于(int i=0;i您的
add()
的第一个参数需要一个
String[]
并且您正在向它传递一个
String

只要改变一下

products.add(columnTags[i],i*100,i*553,false)

products.add(columnTags,i*100,i*553,false)

还可以执行以下操作:

for(...)
{
    String temp = columnTags[i];
    products.add(temp,i*100,i*553,false)
}
编辑

public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);

  fillData();
  ArrayAdapter boxAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, new ArrayList<String>(Arrays.asList(products.name)));

  ListView lvMain = (ListView) findViewById(R.id.lvMain);
  lvMain.setAdapter(boxAdapter);
}

void fillData() {
 String temp;
 for (int i = 0; i <columnTags.length; i++) {
   temp = columnTags[i];
    products.add(new Product(temp, i * 100,i * 553, false));
  }
}
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fillData();
ArrayAdapter-boxAdapter=新的ArrayAdapter(这是android.R.layout.simple_list_item_1,新的ArrayList(Arrays.asList(products.name));
ListView lvMain=(ListView)findViewById(R.id.lvMain);
lvMain.setAdapter(boxAdapter);
}
void fillData(){
字符串温度;

对于(int i=0;i您的
add()
的第一个参数需要一个
String[]
并且您正在向它传递一个
String

只要改变一下

products.add(columnTags[i],i*100,i*553,false)

products.add(columnTags,i*100,i*553,false)

还可以执行以下操作:

for(...)
{
    String temp = columnTags[i];
    products.add(temp,i*100,i*553,false)
}
编辑

public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);

  fillData();
  ArrayAdapter boxAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, new ArrayList<String>(Arrays.asList(products.name)));

  ListView lvMain = (ListView) findViewById(R.id.lvMain);
  lvMain.setAdapter(boxAdapter);
}

void fillData() {
 String temp;
 for (int i = 0; i <columnTags.length; i++) {
   temp = columnTags[i];
    products.add(new Product(temp, i * 100,i * 553, false));
  }
}
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fillData();
ArrayAdapter-boxAdapter=新的ArrayAdapter(这是android.R.layout.simple_list_item_1,新的ArrayList(Arrays.asList(products.name));
ListView lvMain=(ListView)findViewById(R.id.lvMain);
lvMain.setAdapter(boxAdapter);
}
void fillData(){
字符串温度;

对于(int i=0;i Error:(54,53)错误:找不到适合setText(String[])方法TextView的方法。setText(CharSequence)不适用(参数不匹配;String[]无法转换为CharSequence)方法TextView。setText(int)不适用(参数不匹配;String[]无法转换为int)这只会消除您的错误,但我强烈怀疑它对您不起作用,因为您的编程逻辑是错误的。您是否可以共享您的代码,而不是发布代码的图像,以便我可以编辑您的代码。实际上,我需要在我的列表视图中显示所有columntags值您的代码不清晰可见,因为错误的工具提示是com错误:(54,53)错误:没有为setText(String[])方法TextView找到合适的方法。setText(CharSequence)不适用(参数不匹配;String[]无法转换为CharSequence)方法TextView。setText(int)不适用(参数不匹配;String[]无法转换为int)这只会消除您的错误,但我强烈怀疑它对您不起作用,因为您的编程逻辑是错误的。您是否可以共享您的代码,而不是发布代码的图像,以便我可以编辑您的代码。实际上,我需要在我的列表视图中显示所有columntags值您的代码不清晰可见,因为错误的工具提示是com你的代码与你的图像不一样。你的代码是正确的。发布相关代码…图像无助于阅读代码…你的代码与你的图像不一样。你的代码是正确的。发布相关代码…图像无助于阅读代码…你的代码与你的图像不一样。你的代码是正确的。