'公共類AttendanceActivity延伸活動{如何保存在Android的ListView中的TextView的內容,同時滾動
TextView rollNo, name, attendance,attendance1,tv;
SqliteDBHelper db;
private List<Student> studentlist;
private List<Attendance>Attendancelist,attendancelist;
private String status;
ImageView iv;
ArrayList<String> mannschaftsnamen = new ArrayList<String>();
ArrayList<String> namelsist = new ArrayList<String>();
ArrayList<Integer> idintegr= new ArrayList<Integer>();
List<NameBean> beanList=new ArrayList<NameBean>();
BaseAdapter myAdapter = new BaseAdapter() {
class ViewHolder {
TextView rollNo;
TextView name;
TextView attendance;
TextView tv;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final ViewHolder viewHolder;
if(convertView==null){
// inflate the layout
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.attendance_layout, parent, false);
viewHolder = new ViewHolder();
viewHolder.rollNo = (TextView) convertView.findViewById(R.id.rollNoTxtView);
viewHolder.name = (TextView) convertView.findViewById(R.id.nameTxtView);
viewHolder.attendance = (TextView) convertView.findViewById(R.id.attendanceTxtView);
// store the holder with the view.
convertView.setTag(viewHolder);
}else{
viewHolder = (ViewHolder) convertView.getTag();
}
if(convertView != null) {
viewHolder.name.setText(studentlist.get(position).getStname());
viewHolder.rollNo.setText(Integer.toString(studentlist.get(position).getSregno()));
//viewHolder.attendance.setText(status);
viewHolder.attendance.setText("P");
viewHolder.attendance.setBackgroundColor(Color.rgb(12, 107, 12));
}
return convertView;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public Object getItem(int position) {
return position;
}
@Override
public int getCount() {
return studentlist.size();
}
};
ListView list;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_attendance);
tv = (TextView) findViewById(R.id.date);
Calendar c = Calendar.getInstance();
SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy");
final String formattedDate = df.format(c.getTime());
// Now formattedDate have current date/time
// Toast.makeText(getApplicationContext(), formattedDate, Toast.LENGTH_SHORT).show();
tv.setText(formattedDate);
TextView columnHeader1 = (TextView) findViewById(R.id.column_header1);
TextView columnHeader2 = (TextView) findViewById(R.id.column_header2);
TextView columnHeader3 = (TextView) findViewById(R.id.column_header3);
TextView sub=(TextView) findViewById(R.id.subname);
iv=(ImageView) findViewById(R.id.home);
columnHeader1.setText("Regno");
columnHeader2.setText("Name");
columnHeader3.setText("Attendance");
db = new SqliteDBHelper(this);
int value2 = getIntent().getIntExtra("uidr",0);
String subname=getIntent().getStringExtra("subname");
sub.setText(subname);
studentlist=db.getStudentName(value2);
//String name1=db.getStudentName1(value2);
//Attendancelist=db.getAttendanceDetail(name1);
list = (ListView) findViewById(R.id.listView1);
list.setAdapter(myAdapter);
iv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
onBackPressed();
}
});
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, final View view, final int position,
long arg3) {
// TODO Auto-generated method stub
TextView tv = ((TextView) view
.findViewById(R.id.attendanceTxtView));
Log.d("textview", "text" +tv.getText());
if(tv.getText().toString().equals("P"))
{
tv.setText("A");
// tv.setTextColor(Color.rgb(200,0,0));
tv.setBackgroundColor(Color.rgb(200, 0, 0));
}
else
{
tv.setText("P");
// tv.setTextColor(Color.rgb(12,107,12));
tv.setBackgroundColor(Color.rgb(12, 107, 12));
}
String attendance1 = ((TextView) view.findViewById(R.id.attendanceTxtView)).getText().toString();
int id= Integer.valueOf(((TextView) view.findViewById(R.id.rollNoTxtView)).getText().toString());
db.updatedetails(attendance1,id);
// String message = view.findViewById(R.id.attendanceTxtView).gett().toString();
// Toast.makeText(Activityname.this, message, Toast.LENGTH_SHORT).show();
ImageButton confirm = (ImageButton)findViewById(R.id.confirm);
confirm.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
AlertDialog.Builder alertDialog = new AlertDialog.Builder(AttendanceActivity.this);
// Setting Dialog Title
alertDialog.setTitle("Please verify the attendance");
// Setting Dialog Message
alertDialog.setMessage("Have you confirmed ");
// Setting Icon to Dialog
/* alertDialog.setIcon(R.drawable.delete);*/
// Setting Positive "Yes" Button
alertDialog.setPositiveButton("YES", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int which) {
TextView tv;
View view;
for (int i = 0; i <= list.getLastVisiblePosition() - list.getFirstVisiblePosition(); i++)
{
tv = (TextView) list.getChildAt(i).findViewById(R.id.attendanceTxtView);
int id= Integer.valueOf(((TextView) list.getChildAt(i).findViewById(R.id.rollNoTxtView)).getText().toString());
String name1=((TextView) list.getChildAt(i).findViewById(R.id.nameTxtView)).getText().toString();
if (tv!=null) {
mannschaftsnamen.add(String.valueOf(tv.getText()));
idintegr.add(id);
namelsist.add(name1);
Log.e("ypgs", String.valueOf(tv.getText()));
Log.e("ypgs","" + id);
Log.e("ypgs", name1);
}
}
for(int i=0;i<namelsist.size();i++)
{
Log.e("ypgsinaloop", namelsist.get(i));
}
db.insertdetails1(namelsist,idintegr,mannschaftsnamen);
}
});
// Setting Negative "NO" Button
alertDialog.setNegativeButton("NO", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// Write your code here to invoke NO event
Toast.makeText(getApplicationContext(), "ok,please verify again..", Toast.LENGTH_SHORT).show();
dialog.cancel();
}
});
// Showing Alert Message
alertDialog.show();
}
});
}
});
}
} `我有列表項與TextView的在裏面,我有當我點擊「P問題「它變成了」A「,但是當我從頭到尾再次滾動時,當我到達最高位時,它變成」P「。
請參考我的形象理解我的問題
我沒有找到任何圖片@alokraj。請提供。 – Rahul
現在我附上image.please幫助我,如果你知道 – alokraj
請在這裏提供你的適配器代碼。 – Rahul