简体   繁体   English

如何从Android将字符串插入现有行到数据库

[英]How to insert a string into existing row into database from android

I have a row obtained from data base and I am using textview to display them. 我有从数据库中获得的行,并且正在使用textview显示它们。 but I have a button which gives a string.when it is onclicked and I want that data to be posted into an existing same row. 但是我有一个提供字符串的按钮。当它被单击时,我希望将数据发布到现有的同一行中。

public class RecyclerViewAdapter extends 
RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder>
{

Context context;
int attempt=1,attempt1=2;
public static final String decline="0";
public static final String KEY_DECLINE = "decline";
public static final String accept="1";
public static final String KEY_ACCEPT = "accept";
List<GetDataAdapter> getDataAdapter;


public RecyclerViewAdapter(List<GetDataAdapter> getDataAdapter, Second context){

    super();

    this.getDataAdapter = getDataAdapter;
    this.context = context;
}

@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.container_customer, parent, false);

    ViewHolder viewHolder = new ViewHolder(v);

    return viewHolder;
}

@Override
public void onBindViewHolder(final ViewHolder holder, int position) {

    final GetDataAdapter getDataAdapter1 =  getDataAdapter.get(position);
    holder.NameTextView.setText("Name:"+getDataAdapter1.getName());
    holder.IdTextView.setText("ID:"+getDataAdapter1.getId());
    holder.PhoneNumberTextView.setText("Problem:"+getDataAdapter1.getPhone_number());
    holder.SubjectTextView.setText("Phone:"+getDataAdapter1.getSubject());
    holder.address.setText("Address"+getDataAdapter1.getAddress());

        holder.accept.setOnClickListener(
                new View.OnClickListener() {
                    @Override
                    public void onClick(final View v) {

                        holder.details.setBackgroundColor(Color.GREEN);
                        holder.decline.setEnabled(false);

                        StringRequest stringRequest = new StringRequest(Request.Method.POST, Url.REGISTER_URL_ACCEPT,
                                new Response.Listener<String>() {
                                    @Override
                                    public void onResponse(String response) {
                                        Toast.makeText(v.getContext(), response, Toast.LENGTH_LONG).show();
                                    }
                                },
                                new Response.ErrorListener() {
                                    @Override
                                    public void onErrorResponse(VolleyError error) {
                                        Toast.makeText(v.getContext(), error.toString(), Toast.LENGTH_LONG).show();
                                    }
                                }) {
                            @Override
                            protected Map<String, String> getParams() {
                                Map<String, String> params = new HashMap<String, String>();
                                params.put(KEY_ACCEPT, accept);
                                return params;
                            }

                        };

                        RequestQueue requestQueue = Volley.newRequestQueue(context);
                        requestQueue.add(stringRequest);
                    }
                }
        );


        holder.decline.setOnClickListener(
                new View.OnClickListener() {
                    @Override
                    public void onClick(final View v) {
                        holder.details.setBackgroundColor(Color.RED);
                        holder.accept.setEnabled(false);
                        StringRequest stringRequest = new StringRequest(Request.Method.POST, Url.REGISTER_URL_DECLINNE,
                                new Response.Listener<String>() {
                                    @Override
                                    public void onResponse(String response) {
                                        Toast.makeText(v.getContext(), response, Toast.LENGTH_LONG).show();
                                    }
                                },
                                new Response.ErrorListener() {
                                    @Override
                                    public void onErrorResponse(VolleyError error) {
                                        Toast.makeText(v.getContext(), error.toString(), Toast.LENGTH_LONG).show();
                                    }
                                }) {
                            @Override
                            protected Map<String, String> getParams() {
                                Map<String, String> params = new HashMap<String, String>();
                                params.put(KEY_DECLINE, decline);
                                return params;
                            }

                        };

                        RequestQueue requestQueue = Volley.newRequestQueue(context);
                        requestQueue.add(stringRequest);
                    }
                }
        );



}

@Override
public int getItemCount() {

    return getDataAdapter.size();
}

class ViewHolder extends RecyclerView.ViewHolder{

    public TextView IdTextView;
    public TextView NameTextView;
    public TextView PhoneNumberTextView;
    public TextView SubjectTextView,address;
    public Button accept,decline;
    public LinearLayout details;

    public ViewHolder(View itemView) {

        super(itemView);

        IdTextView = (TextView) itemView.findViewById(R.id.Id) ;
        NameTextView = (TextView) itemView.findViewById(R.id.CustomerName) ;
        PhoneNumberTextView = (TextView) itemView.findViewById(R.id.Typeofproblem) ;
        SubjectTextView = (TextView) itemView.findViewById(R.id.Phoneno) ;
        address=(TextView)itemView.findViewById(R.id.Address);
        accept=(Button)itemView.findViewById(R.id.accept);
        decline=(Button)itemView.findViewById(R.id.decline);
        details=(LinearLayout)itemView.findViewById(R.id.details);
    }
}
}

You can insert data to database like this 您可以像这样将数据插入数据库

 db.insert(TABLE_NAME, null, getMemberContentValues(object)); 
private ContentValues getMemberContentValues(Object object) {

        if (object== null)
            return null;

        ContentValues contentValues = new ContentValues();

        contentValues.put(Column_name1, object.getProperty1());
        contentValues.put(Column_name2, object.getProperty2());

        return contentValues;
    } 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM