java类没有默认构造函数

时间:2017-11-25 06:31:27

标签: android listview

清单文件中的

在Salesmandistributordetails 下显示红线错误

'com.theitheaven.modzi.salesmanjob.Salesmandistributorlistitem' 没有默认的构造较少...(按Ctrl + F1) 验证Android XML文件中的资源引用。

XML标签具有空体较少...(按Ctrl + F1) 报告空标签正文。验证适用于XML / JSP / JSPX / HTML / XHTML文件类型。

的AndroidManifest.xml

 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.theitheaven.modzi">

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>

    <application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name="com.theitheaven.modzi.Homepage" android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".distributorjob.Distributorlogin" android:screenOrientation="portrait"></activity>
        <activity android:name=".customerjob.Customerlogin" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmanlogin" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmanhomepage" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Saleschangepass" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmanordertrack" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmanadddistributor" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmanprofile" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmandistributorlist" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmandistributorlistitem" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmandisorderdetails" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.Distributorregistration" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.Distributorhomepage" android:screenOrientation="portrait"></activity>
        <activity android:name=".customerjob.Customerregistration" android:screenOrientation="portrait"></activity>
        <activity android:name=".customerjob.Customerprflupdate" android:screenOrientation="portrait"></activity>
        <activity android:name=".customerjob.Customerhomepage" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.Distributorforgotpassword" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.Distributorprflupdate" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.DistributorOTPverify" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.Distributormyorder" android:screenOrientation="portrait"></activity>
        <activity android:name=".distributorjob.Distributormyorderitem" android:screenOrientation="portrait"></activity>
        <activity android:name=".salesmanjob.Salesmanforgotpassword" android:screenOrientation="portrait"></activity>

    </application>

</manifest>

Salesmandistributorlist.java

public class Salesmandistributorlist extends Activity {
    ListView list1;
    ImageView im1;
    private List<String> OrderNo;
    private List<String> Size;
    private List<String> Mrp;
    private List<String> Quantity;
    private List<String> TotalPrice;
    private List<String> ProductName;
    private List<String> PurchaserTypeName;
    private List<String> PurchaserName;
    private List<String> Date;
    private List<String> TrackOrders;
    private List<String> Id;


    public static String user1,b,c,d;
    public static int a,e;

    SharedPreferences sharedpreferences;
    public static final String PREFERENCES1 = "AlphaPrefData";
    public static final String UID1 = "getUID";


    Salesmandistributorlistitem adapter1;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.salesmandistributorlist);

        sharedpreferences = getSharedPreferences(PREFERENCES1, Context.MODE_PRIVATE);

        //  user=sharedpreferences.getString(UID,"");

        im1 = (ImageView) findViewById(R.id.im1);

        im1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Salesmandistributorlist.this, Salesmanordertrack.class);
                startActivity(intent);
            }
        });


        OrderNo = new ArrayList<String>();
        Size = new ArrayList<String>();
        Mrp = new ArrayList<String>();
        Quantity = new ArrayList<String>();
        TotalPrice = new ArrayList<String>();
        ProductName = new ArrayList<String>();
        PurchaserTypeName = new ArrayList<String>();
        PurchaserName = new ArrayList<String>();
        Date = new ArrayList<String>();
        TrackOrders = new ArrayList<String>();
        Id = new ArrayList<String>();

        list1 = (ListView) findViewById(R.id.lvorder);

        myAPI1();


    }

    public void myAPI1()
    {
        RestInterface service1 = RetrofitUtil.retrofit(Constant.BASE_URL);


        //Call<ResponseBody> call1 = service1.SALESMANDISTRIBUTORORDERLIST(sharedpreferences.getInt(UID1,0));
        Call<ResponseBody> call1 = service1.SALESMANDISTRIBUTORORDERLIST(3);
        call1.enqueue(new Callback<ResponseBody>()
        {
            @Override
            public void onResponse(Call<ResponseBody> call1, Response<ResponseBody> response)
            {

                if (response.isSuccessful())
                {
                    try
                    {
                        String r = response.body().string();
                        Log.d("Response", r);
                        //  Toast.makeText(Order_details.this,r,Toast.LENGTH_LONG).show();


                        try{
                            JSONObject json = new JSONObject(r);
                            JSONArray json2 = json.getJSONArray("Results");

                            for (int i = 0; i < json2.length(); i++)
                            {
                                //Toast.makeText(Order_details.this,json2.getJSONObject(i).getInt("BookingTransactionID"),Toast.LENGTH_LONG).show();
                                OrderNo.add(String.valueOf(json2.getJSONObject(i).getLong("OrderNo")));
                                Size.add(json2.getJSONObject(i).getString("OriSizegin"));
                                Mrp.add(String.valueOf(json2.getJSONObject(i).getInt("Mrp")));
                                Quantity.add(String.valueOf(json2.getJSONObject(i).getInt("Quantity")));
                                TotalPrice.add(String.valueOf(json2.getJSONObject(i).getInt("TotalPrice")));
                                Id.add(String.valueOf(json2.getJSONObject(i).getInt("Id")));
                                ProductName.add(json2.getJSONObject(i).getString("ProductName"));
                                PurchaserTypeName.add(json2.getJSONObject(i).getString("PurchaserTypeName"));
                                PurchaserName.add(json2.getJSONObject(i).getString("PurchaserName"));
                                Date.add(String.valueOf(json2.getJSONObject(i).getString("Date")));
                                TrackOrders.add(String.valueOf(json2.getJSONObject(i).getBoolean("TrackOrders")));

                            }
                            adapter1 = new Salesmandistributorlistitem(Salesmandistributorlist.this,OrderNo,Size,Mrp,Quantity,TotalPrice,Id,ProductName,PurchaserTypeName,PurchaserName,Date,TrackOrders);
                            list1.setAdapter((Salesmandistributorlistitem) adapter1);

                        }
                        catch (JSONException e) {
                            e.printStackTrace();
                        }

                    }
                    catch (Exception e)
                    {
                        e.printStackTrace();
                    }
                }
                else
                {
                    String error = RetrofitError.codeToErrorMessage(response.code());
                    Toast.makeText(Salesmandistributorlist.this, error, Toast.LENGTH_SHORT).show();
                }
            }

            @Override
            public void onFailure(Call<ResponseBody> call, Throwable t)
            {
                String str = RetrofitError.showErrorMessage(t);
                Toast.makeText(Salesmandistributorlist.this, str, Toast.LENGTH_SHORT).show();
            }
        });
    }
}

Salesmandistributorlistitem.java

public class Salesmandistributorlistitem extends ArrayAdapter<String>  {
    private final Activity context1;
    private List<String> OrderNo;
    private List<String> Size;
    private List<String> Mrp;
    private List<String> Quantity;
    private List<String> Id;
    private List<String> TotalPrice;
    private List<String> ProductName;
    private List<String> PurchaserTypeName;
    private List<String> PurchaserName;
    private List<String> Date;
    private List<String> TrackOrders;

    public static String orderid;

    //  ViewHolder holder;

    SharedPreferences sharedpreferences;
    public static final String PREFERENCES1 = "AlphaPrefData";
    public static final String UID1 = "getUID";


    public Salesmandistributorlistitem(Activity context1,List<String> OrderNo,List<String> Size,List<String> Mrp,List<String> Quantity,List<String> TotalPrice,List<String> Id,List<String> ProductName,List<String> PurchaserTypeName,List<String> PurchaserName,List<String> Date,List<String> TrackOrders) {
        super(context1,R.layout.salesmandistributorlistitem,PurchaserTypeName);
        this.context1 = context1;
        this.OrderNo = OrderNo;
        this.Size = Size;
        this.Mrp = Mrp;
        this.Quantity = Quantity;
        this.TotalPrice = TotalPrice;
        this.Id = Id;
        this.ProductName = ProductName;
        this.PurchaserTypeName = PurchaserTypeName;
        this.PurchaserName = PurchaserName;
        this.Date = Date;
        this.TrackOrders = TrackOrders;

    }


    @Override
    public View getView(final int position, View view, ViewGroup parent) {

        sharedpreferences = context1.getSharedPreferences(PREFERENCES1, Context.MODE_PRIVATE);

        LayoutInflater inflater1 = (LayoutInflater) context1
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View rowView1 = inflater1.inflate(R.layout.salesmandistributorlistitem, parent, false);




        TextView tv1 = (TextView) rowView1.findViewById(R.id.tv1);
        TextView tv2 = (TextView) rowView1.findViewById(R.id.tv2);
        TextView tv4 = (TextView) rowView1.findViewById(R.id.tv4);

        Button orderdetails = (Button) rowView1.findViewById(R.id.orderdetails);
        Button trackdetails = (Button) rowView1.findViewById(R.id.trackdetails);


        // String bookdate = BookingDate.get(position);



        orderdetails.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent(context1,Salesmandisorderdetails.class);
                intent.putExtra("car_model", orderid);
                context1.startActivity(intent);
            }

        });

        trackdetails.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent(context1,Salesmandisorderdetails.class);
                context1.startActivity(intent);
            }

        });

        String s1 = OrderNo.get(position);
        tv1.setText(s1);

        String s2 = Size.get(position);
        // tv2.setText(s2);

        // String s3 = Mrp.get(position);
        // tv3.setText(s3);

        String s4 = Quantity.get(position);
        tv4.setText(s4);

        // String s5 = TotalPrice.get(position);
        // tv5.setText(s5);

        // String s6 = ProductName.get(position);
        // s6=s6.substring(0,10);
        // tv6.setText(s6);

        orderid=Id.get(position);

        String s7 = Date.get(position);
        tv2.setText(s7);

        return rowView1;
    }
}

2 个答案:

答案 0 :(得分:1)

Salesmandistributorlistitem是一个适配器,因此无需在manifest文件中注册它。

所以从清单

中删除以下行
 <activity android:name=".salesmanjob.Salesmandistributorlistitem" android:screenOrientation="portrait"></activity>
//^^^^^^^ is activity but Salesmandistributorlistitem is extending adapter 

Read, elements that can appear in the manifest file

答案 1 :(得分:0)

错误&#34;没有默认构造函数&#34;意味着你需要添加一个像这样的无参数构造函数:

Salesmandistributordetails() {
}

然而,这并不意味着唯一错误的是正确的解决方案,我只是在解释错误信息。

相关问题