[英]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.