Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.android.xont.controller;
- import android.app.Activity;
- import android.app.ExpandableListActivity;
- import android.app.ListActivity;
- import android.content.Intent;
- import android.graphics.drawable.Drawable;
- import android.os.Bundle;
- import android.view.Gravity;
- import android.view.MenuItem;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.AbsListView;
- import android.widget.AdapterView;
- import android.widget.ArrayAdapter;
- import android.widget.BaseExpandableListAdapter;
- import android.widget.ExpandableListAdapter;
- import android.widget.ExpandableListView;
- import android.widget.ExpandableListView.ExpandableListContextMenuInfo;
- import android.widget.ListView;
- import android.widget.TextView;
- import android.widget.Toast;
- import android.widget.AdapterView.OnItemClickListener;
- public class SettingScreenActivity extends ExpandableListActivity {
- static final String[] SETTINGOPITONS = new String[] { "Theme",
- "Database Setup" };
- private static Drawable sBackground;
- ExpandableListAdapter mAdapter;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- sBackground = getResources().getDrawable(R.drawable.wallpaper);
- // Set up our adapter
- mAdapter = new MyExpandableListAdapter();
- setListAdapter(mAdapter);
- getExpandableListView().setBackgroundDrawable(sBackground);
- getExpandableListView().setTextFilterEnabled(true);
- registerForContextMenu(getExpandableListView());
- }
- @Override
- public boolean onContextItemSelected(MenuItem item) {
- ExpandableListContextMenuInfo info = (ExpandableListContextMenuInfo) item.getMenuInfo();
- String title = ((TextView) info.targetView).getText().toString();
- int type = ExpandableListView.getPackedPositionType(info.packedPosition);
- System.out.println(" ----- " + type);
- if (type == ExpandableListView.PACKED_POSITION_TYPE_CHILD) {
- int groupPos = ExpandableListView.getPackedPositionGroup(info.packedPosition);
- int childPos = ExpandableListView.getPackedPositionChild(info.packedPosition);
- Toast.makeText(this,title + ": Child " + childPos + " clicked in group "+ groupPos, Toast.LENGTH_SHORT).show();
- return true;
- } else if (type == ExpandableListView.PACKED_POSITION_TYPE_GROUP) {
- int groupPos = ExpandableListView.getPackedPositionGroup(info.packedPosition);
- Toast.makeText(this, title + ": Group " + groupPos + " clicked",Toast.LENGTH_SHORT).show();
- return true;
- }
- return false;
- }
- @Override
- public boolean onChildClick(ExpandableListView parent, View v,int gp, int cp, long id) {
- System.out.println(" ----- " + gp + "======= " + cp);
- if(gp == 1 && cp == 0){
- Intent showContent = new Intent(getApplicationContext(),CreateNormalDatabaseActivity.class);
- startActivity(showContent);
- }else{
- Intent showContent = new Intent(getApplicationContext(),CreateNormalDatabaseActivity.class);
- startActivity(showContent);
- }
- return super .onChildClick(parent, v, gp, cp, id);
- }
- public class MyExpandableListAdapter extends BaseExpandableListAdapter {
- // Sample data set. children[i] contains the children (String[]) for groups[i].
- //static final String[] SETTINGOPITONS = new String[] { };
- private String[] groups = { "Theme","Database Setup" ,"Synchronization","Change Password" };
- private String[][] children = {
- { "Font Setting", "Backgroud Setting"},
- { "Master Database", "Normal Database"},
- { "Download", "Upload"},
- { ""}
- };
- public Object getChild(int groupPosition, int childPosition) {
- return children[groupPosition][childPosition];
- }
- public long getChildId(int groupPosition, int childPosition) {
- return childPosition;
- }
- public int getChildrenCount(int groupPosition) {
- return children[groupPosition].length;
- }
- public TextView getGenericView() {
- // Layout parameters for the ExpandableListView
- AbsListView.LayoutParams lp = new AbsListView.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, 64);
- TextView textView = new TextView(SettingScreenActivity.this);
- textView.setLayoutParams(lp);
- // Center the text vertically
- textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
- // Set the text starting position
- textView.setPadding(45, 13, 13, 13);
- return textView;
- }
- public View getChildView(int groupPosition, int childPosition, boolean isLastChild,
- View convertView, ViewGroup parent) {
- TextView textView = getGenericView();
- textView.setText(getChild(groupPosition, childPosition).toString());
- return textView;
- }
- public Object getGroup(int groupPosition) {
- return groups[groupPosition];
- }
- public int getGroupCount() {
- return groups.length;
- }
- public long getGroupId(int groupPosition) {
- return groupPosition;
- }
- public View getGroupView(int groupPosition, boolean isExpanded, View convertView,
- ViewGroup parent) {
- TextView textView = getGenericView();
- textView.setText(getGroup(groupPosition).toString());
- return textView;
- }
- public boolean isChildSelectable(int groupPosition, int childPosition) {
- return true;
- }
- public boolean hasStableIds() {
- return true;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement