i have a ExpanableListView that i'm texting. I have a problem with the 
expand icon of the items. The icon is being painted overlaying the text 
title of each item. It means that for example, if the title of the first 
items is "Ducados", the icon is overlaying "Du" and only "cados" is visible

What can i do to align the text on the right of the expand icon?

this is the code:

public class MainActivity extends ExpandableListActivity {ExpandableListAdapter 
mAdapter;
@Overridepublic void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Set up our adapter
    mAdapter = new MyExpandableListAdapter();
    setListAdapter(mAdapter);
    registerForContextMenu(getExpandableListView());}
@Overridepublic void onCreateContextMenu(ContextMenu menu, View v, 
ContextMenuInfo menuInfo) {
    menu.setHeaderTitle("Sample menu");
    menu.add(0, 0, 0, "Sample action");}
@Overridepublic boolean onContextItemSelected(MenuItem item) {
    ExpandableListContextMenuInfo info = (ExpandableListContextMenuInfo) 
item.getMenuInfo();

    String title = ((TextView) info.targetView).getText().toString();

    int type = ExpandableListView.getPackedPositionType(info.packedPosition);
    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;}
public class MyExpandableListAdapter extends BaseExpandableListAdapter {
    // Sample data set.  children[i] contains the children (String[]) for 
groups[i].
    private String[] groups = { "Names", "Designation", "Gender", "Company" };
    private String[][] children = {
            { "abc", "xyz", "ash", "anu" },
            { "SSE", "TJ", "PM", "SE" },
            { "Male", "Female Female Female Female Female Female Female Female 
Female Female Female Female Female Female Female Female Female Female Female 
Female Female Female Female Female Female Female Female Female Female Female 
Female Female Female Female Female Female Female Female Female Female " },
            { "yyyyyy", "xxxxx" }
    };

    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, 
ViewGroup.LayoutParams.WRAP_CONTENT);

        TextView textView = new TextView(MainActivity.this);
        textView.setLayoutParams(lp);
        textView.setTextSize(20);
        // Center the text vertically
        textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
        return textView;
    }

    public View getChildView(int groupPosition, int childPosition, boolean 
isLastChild, View convertView, ViewGroup parent) {
        TextView textView = getGenericView();
        textView.setText(getChild(groupPosition, childPosition).toString());
        textView.setTextSize(15);
        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;
    }   }}

 

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to