Im developing an app and as the title says how to put items of listview into String array, not string array to listview but listview to string array.
I've been searching for this but what I only found is putting String array items into listview.
Please help me thank you in advance.
To clarify this thread, the question is how to put listview items into String array.
Thanks. :D
Codes
public class DailyPlanTab extends Activity implements OnItemClickListener {
ListView dailyPlanList;
ArrayList<DailyManager> taskList = new ArrayList<DailyManager>();
DatabaseDailyPlan db;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.dailyplan_layout);
dailyPlanList = (ListView) findViewById(R.id.lvDailyPlanList);
dailyPlanList.setOnItemClickListener(this);
ImageView add = (ImageView) findViewById(R.id.ivDailyPlanAdd);
add.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent newDailyIntent = new Intent(getApplicationContext(),
NewDailyPlan.class);
startActivity(newDailyIntent);
}
});
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
taskList.clear();
db = new DatabaseDailyPlan(getApplicationContext());
db.getWritableDatabase();
ArrayList<DailyManager> tempList = db.getTask();
for (int i = 0; i < tempList.size(); i++) {
String getTask = tempList.get(i).getDaily_name();
String getDate = tempList.get(i).getDaily_date();
int getId = tempList.get(i).getDaily_id();
DailyManager dm = new DailyManager();
dm.setDaily_name(getTask);
dm.setDaily_date(getDate);
dm.setDaily_id(getId);
taskList.add(dm);
}
dailyPlanList.setAdapter(new ListAdapter(this));
// db.close();
}
public class ListAdapter extends BaseAdapter {
LayoutInflater inflater;
ViewHolder viewHolder;
public ListAdapter(Context c) {
// TODO Auto-generated constructor stub
inflater = LayoutInflater.from(c);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return taskList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if (convertView == null) {
convertView = inflater.inflate(R.layout.row_checklist_item,
null);
viewHolder = new ViewHolder();
viewHolder.taskTitle = (TextView) convertView
.findViewById(R.id.tvCheckListItem);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.taskTitle.setText(""
+ taskList.get(position).getDaily_name());
return convertView;
}
}
public class ViewHolder {
TextView taskTitle, taskDate;
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position,
long arg3) {
// TODO Auto-generated method stub
int taskId = taskList.get(position).getDaily_id();
String taskName = taskList.get(position).getDaily_name();
String taskDate = taskList.get(position).getDaily_date();
Intent newPlan = new Intent(getApplicationContext(), DailyPlan.class);
newPlan.putExtra("task_id", taskId);
newPlan.putExtra("task_name", taskName);
startActivity(newPlan);
}
next is the information of the item inside the listview
public class DailyPlan extends Activity implements OnItemClickListener {
final ArrayList<DailyManager> savedItems = new ArrayList<DailyManager>();
ListView checkList;
Boolean nextItem = false;
TempManager tm;
DatabaseTemp dbTemp;
Intent i;
int taskId = -1;
String taskName = " ", taskDate = null;
DatabaseDailyPlan db;
DailyManager dm;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.saved_dailyplan);
checkList = (ListView) findViewById(R.id.lvCheckList);
// checkList.setOnItemClickListener(this);
try {
i = getIntent();
taskId = i.getExtras().getInt("task_id");
taskName = i.getExtras().getString("task_name");
Toast.makeText(getApplicationContext(), "From new id is" + taskId,
5000).show();
} catch (Exception e) {
}
Button addList = (Button) findViewById(R.id.bAddList);
addList.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// openDialog("", false, -1);
}
});
if (nextItem) {
// openDialog("", false, -1);
}
}
public void refresh() {
DailyPlan.this.onResume();
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
savedItems.clear();
dbTemp = new DatabaseTemp(getApplicationContext());
dbTemp.getWritableDatabase();
db = new DatabaseDailyPlan(getApplicationContext());
db.getWritableDatabase();
if (taskId != -1) { // / For Load
ArrayList<DailyManager> savedList = db.getList(taskId);
for (int i = 0; i < savedList.size(); i++) {
String savedListItems = savedList.get(i).getDaily_list();
String savedListTitle = savedList.get(i).getDaily_name();
String savedListDate = savedList.get(i).getDaily_date();
int savedListId = savedList.get(i).getDaily_id();
DailyManager dm = new DailyManager();
dm.setDaily_list(savedListItems);
dm.setDaily_name(savedListTitle);
dm.setDaily_date(savedListDate);
dm.setDaily_id(savedListId);
savedItems.add(dm);
}
} else { // / For New
}
checkList.setAdapter(new ListAdapter(this));
}
public class ListAdapter extends BaseAdapter {
LayoutInflater inflater;
ViewHolder viewHolder;
public ListAdapter(Context c) {
// TODO Auto-generated constructor stub
inflater = LayoutInflater.from(c);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return savedItems.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if (convertView == null) {
convertView = inflater.inflate(R.layout.row_checklist_item,
null);
viewHolder = new ViewHolder();
viewHolder.checkListItem = (TextView) convertView
.findViewById(R.id.tvCheckListItem);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.checkListItem.setText(savedItems.get(position)
.getDaily_list() + position);
final int temp = position;
return convertView;
}
}
private class ViewHolder {
TextView checkListItem;
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int item, long arg3) {
// TODO Auto-generated method stub
// openDialog(savedItems.get(item).getDaily_name(), true,
// savedItems.get(item).getDaily_id());
}
}