Я хочу отобразить дочерние элементы его соответствующего элемента группы, доступные в расширяемом списке, в отдельный список.Как отображать дочерние элементы соответствующего объекта группы в другом списке
я сделал следующее,
package com.example.demo_data1;
import java.util.ArrayList;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.ActionBarDrawerToggle;
import android.support.v4.widget.DrawerLayout;
import android.support.v4.widget.DrawerLayout.DrawerListener;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ExpandableListView;
import android.widget.ExpandableListView.OnChildClickListener;
import android.widget.Toast;
@SuppressLint("NewApi")
public class DrawerLayoutTest extends Activity implements OnChildClickListener {
private DrawerLayout drawer;
private ExpandableListView drawerList;
private ActionBarDrawerToggle actionBarDrawerToggle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_drawer_layout_test);
setGroupData();
setChildGroupData();
initDrawer();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.drawer_layout_test, menu);
return true;
}
private void initDrawer() {
drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawerList = (ExpandableListView) findViewById(R.id.left_drawer);
drawerList.setAdapter(new NewAdapter(this, groupItem, childItem));
drawerList.setOnChildClickListener(this);
// actionBarDrawerToggle = new ActionBarDrawerToggle(this, drawer,
// R.drawable.ic_drawer, R.string.open_drawer,
// R.string.close_drawer) {
// public void onDrawerClosed(View view) {
// getActionBar().setSubtitle("open");
// }
//
// /** Called when a drawer has settled in a completely open state. */
// public void onDrawerOpened(View drawerView) {
// getActionBar().setSubtitle("close");
// }
//
// };
//
// drawer.setDrawerListener(actionBarDrawerToggle);
}
public void setGroupData() {
groupItem.add("TECHNOLOGY");
groupItem.add("MOBILE");
groupItem.add("MANUFACTURER");
groupItem.add("EXTRAS");
}
ArrayList<String> groupItem = new ArrayList<String>();
ArrayList<Object> childItem = new ArrayList<Object>();
public void setChildGroupData() {
/**
* Add Data For TecthNology
*/
ArrayList<String> child = new ArrayList<String>();
child.add("Java");
child.add("Drupal");
child.add(".Net Framework");
child.add("PHP");
childItem.add(child);
/**
* Add Data For Mobile
*/
child = new ArrayList<String>();
child.add("Android");
child.add("Window Mobile");
child.add("iPHone");
child.add("Blackberry");
childItem.add(child);
/**
* Add Data For Manufacture
*/
child = new ArrayList<String>();
child.add("HTC");
child.add("Apple");
child.add("Samsung");
child.add("Nokia");
childItem.add(child);
/**
* Add Data For Extras
*/
child = new ArrayList<String>();
child.add("Contact Us");
child.add("About Us");
child.add("Location");
child.add("Root Cause");
childItem.add(child);
}
public boolean onChildClick(ExpandableListView parent, View v,
int groupPosition, int childPosition, long id) {
switch (groupPosition)
{
case 0:
switch (childPosition)
{
case 0:
MainActivity();
break;
case 1:
//
}
}
return false;
}
private void MainActivity(){
Intent myIntent = new Intent(this, MainActivity.class);
startActivity(myIntent);
}
}
Теперь здесь, в приведенной выше коде на дочерних элементах становятся изображенным ниже элемент группы в одном ListView вместо я хочу, чтобы отобразить дочерние элементы в разных ListView рядом с группой item listview.
Пожалуйста, помогите мне с этим, застрявшим долгое время.
Любая помощь в этом отношении будет оценена по достоинству.
использование ребенка ArrayList для другого ListView –
могли бы вы помочь мне с логикой или конкретном примере. –
что вы хотите точно? когда вы нажимаете на элемент gruop, затем открываете новую активность и видите ли список? –