Урок 45. Список-дерево ExpandableListView

Обсуждение уроков
Yozch
Сообщения: 7
Зарегистрирован: 11 мар 2013, 19:17

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Yozch » 13 мар 2013, 21:18

ну, все. Вопрос снимается. Я, по совету Olivka, заюзал предложенное дерево. Все завел за два дня, прикрутил базу данных, все работает. Чего и вам желаю.
Слева исходная база данных, справа - дерево в андроиде.
Внешний вид не причесан еще.
Все открывается-закрывается.
Изображение

Если у кого-то появятся вопросы по нему, с удовольствием отвечу )

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 13 мар 2013, 21:35

Ну я рада! Я намного дольше с ним разбиралась
А можно спросить вот слева на картиночке это у тебя что? откуда окошко?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Yozch
Сообщения: 7
Зарегистрирован: 11 мар 2013, 19:17

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Yozch » 14 мар 2013, 13:30

Слева - это мой основной коммерческий сойфт под Win, создание каталогов в различных форматах.
Собственно, из него данные экспортируются в проект Android и далее в apk.
Т.е. на android'е делается вьюер данных из большой десктопной программули.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 14 мар 2013, 14:43

спасибо за разъяснения. А пустые квадратики для чекбоксов там зачем?
А когда ты дерево сделаешь какие дальше планы? нужно еще ведь какие-то данные отображать?
А то я сделала, но мне не совсем нравится как.
Например, при долгом клике на ветке у меня открываются данные по группам товара в другом окне (а если в альбомной ориентации то в этом же - справа). Но пользователю кое-что не нравится все равно. Вот ищу какие-то идеи.
Все-таки на экране большого компа можно намного больше отобразить и удобнее. А юзер когда только и знает как там мышью кликать, хочет слишком чтоб все похоже было.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Yozch
Сообщения: 7
Зарегистрирован: 11 мар 2013, 19:17

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Yozch » 14 мар 2013, 20:15

ну так у меня будет то же самое что и у тебя. При клике на финальной ветке открывается, собственно, список товаров в зависимости о размера экрана. Просто плоский список. А при клике на него - уже подробное описание.

А для чего чекбоксы в десктопной программе, - в основном, чтобы сгенерить каталог нужного формата именно на выбранные позиции.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 14 мар 2013, 22:17

у меня можно кликать на любой ветке, чтоб открылся список, например, когда нужно отобразить все позиции и поискать во всех.
А ты будешь чекбоксы делать?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Yozch
Сообщения: 7
Зарегистрирован: 11 мар 2013, 19:17

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Yozch » 16 мар 2013, 16:10

нет, я их отключил.

Аватара пользователя
Elek
Сообщения: 55
Зарегистрирован: 29 май 2012, 09:57

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Elek » 15 апр 2013, 14:26

Добрый день, вместо массива String'ов передаю List собсвтенных объектов, получилось топорно и не красиво.
Посоветуйте как делать правильно.
Код объекта который передаю:

Код: Выделить всё

import java.sql.Date;

public class Deposit {

	private long deposit_id;
	private long client_id;
	private double balance;
	private String type;
	private double estimated_balance;

	private Date opening_date;
	private Date closing_date;

	public Deposit() {
	}

	public Deposit(long deposit_id, long client_id, double balacne,
			String type, long estimated_balance, Date opening_date,
			Date closing_date) {
		super();
		this.deposit_id = deposit_id;
		this.client_id = client_id;
		this.balance = balacne;
		this.type = type;
		this.estimated_balance = estimated_balance;
		this.opening_date = opening_date;
		this.closing_date = closing_date;
	}

	public long getDeposit_id() {
		return deposit_id;
	}

	public void setDeposit_id(long deposit_id) {
		this.deposit_id = deposit_id;
	}

	public long getClient_id() {
		return client_id;
	}

	public void setClient_id(long client_id) {
		this.client_id = client_id;
	}

	public double getBalance() {
		return balance;
	}

	public void setBalance(double balacne) {
		this.balance = balacne;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public double getEstimated_balance() {
		return estimated_balance;
	}

	public void setEstimated_balance(double d) {
		this.estimated_balance = d;
	}

	public Date getOpening_date() {
		return opening_date;
	}

	public void setOpening_date(Date date) {
		this.opening_date = date;
	}

	public Date getClosing_date() {
		return closing_date;
	}

	public void setClosing_date(Date date) {
		this.closing_date = date;
	}
}
Код ExpandableListView:

Код: Выделить всё

public class DepositsFragment extends Fragment {

	private static final String CHILD_NAME = "childName";
	private static final String GROUP_NAME = "groupName";

	// collection for groups
	private ArrayList<Map<String, String>> groupData;

	// collection for elements of one group
	private ArrayList<Map<String, String>> childDataItem;

	// general collection for element's collection
	private ArrayList<ArrayList<Map<String, String>>> childData;
	// we will get childData = ArrayList<childDataItem>

	// list of attributes for group or element
	private Map<String, String> elementMap;

	private SimpleExpandableListAdapter expandableListAdapter;
	private ExpandableListView expandableListView;

	@Override
	public View onCreateView(LayoutInflater inflater, ViewGroup container,
			Bundle savedInstanceState) {
		View view = inflater.inflate(R.layout.fragment_deposits, null);

		List<Deposit> deposits = ClientContainer.getClientContainer()
				.getDeposits();

		groupData = new ArrayList<Map<String, String>>();
		for (Deposit deposit : deposits) {
			Log.d(MbankMainActivity.MBANK_CLIENT,
					"DepositsFragment.onCreateView adding deposit type: "
							+ deposit.getType());
			// fill the list of attributes for each map
			elementMap = new HashMap<String, String>();
			elementMap.put(GROUP_NAME, "Deposit type: " + deposit.getType());
			groupData.add(elementMap);
		}

		// create collection for elements collection
		childData = new ArrayList<ArrayList<Map<String, String>>>();

		for (Deposit deposit : deposits) {
			// create collection of elements for first group
			childDataItem = new ArrayList<Map<String, String>>();

			elementMap = new HashMap<String, String>();
			elementMap.put(CHILD_NAME,
					"Current Balance " + deposit.getBalance()); // balance
			childDataItem.add(elementMap);
			elementMap = new HashMap<String, String>();
			elementMap.put(CHILD_NAME,
					"Estimated balance " + deposit.getEstimated_balance()); // estimated
																			// balance
			childDataItem.add(elementMap);
			elementMap = new HashMap<String, String>();
			elementMap.put(CHILD_NAME,
					"Opening Date " + deposit.getOpening_date()); // Opening
																	// Date
			childDataItem.add(elementMap);
			elementMap = new HashMap<String, String>();
			elementMap.put(CHILD_NAME,
					"Closing Date " + deposit.getClosing_date()); // Closing
																	// Date
			childDataItem.add(elementMap);

			// adding to collection of collection
			childData.add(childDataItem);
		}

		// list of attributes for reading
		String groupFrom[] = new String[] { GROUP_NAME };
		// list of ID view-elements, to which you will pass the attributes of
		// the group
		int[] groupTo = new int[] { android.R.id.text1 };

		// List of attributes for reading
		String childFrom[] = new String[] { CHILD_NAME };
		// list of ID view-elements, to which you will place attributes
		int childTo[] = new int[] { android.R.id.text1 };

		expandableListAdapter = new SimpleExpandableListAdapter(getActivity(),
				groupData, android.R.layout.simple_expandable_list_item_1,
				groupFrom, groupTo, childData, R.layout.text_item, childFrom,
				childTo);

		expandableListView = (ExpandableListView) view
				.findViewById(R.id.elv_Deposits);
		expandableListView.setAdapter(expandableListAdapter);

		return view;
	}

}
Возможно нужно наследовать BaseExpandableListAdapter и создавать свою реализацию.
Помогите с небольшим примером или посоветуйте куда копать.
Спасибо.

Аватара пользователя
Elek
Сообщения: 55
Зарегистрирован: 29 май 2012, 09:57

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Elek » 19 апр 2013, 20:34

Может кому-то пригодится.
Расширил BaseExpandableListAdapter

[syntax=java]public class ExpandableDepositView extends BaseExpandableListAdapter {

private List<Deposit> deposits;
private LayoutInflater inflater;
private NumberFormat numberFormatter;
private Context ctx;

public ExpandableDepositView(Context context, List<Deposit> deposits) {
this.deposits = deposits;
ctx = context;
inflater = LayoutInflater.from(context);
}

@Override
public Object getChild(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return null;
}

// returns the child id according to parent's position
public long getChildId(int groupPosition, int childPosition) {
return groupPosition;
}

@Override
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
View view = convertView;
if(view == null){
view = inflater.inflate(R.layout.layout_mbank_deposit, parent, false);
}

// get the deposit value according to it's position in array
Deposit deposit = deposits.get(groupPosition);

// Preparing values
// get current locale settings
Locale current = ctx.getResources().getConfiguration().locale;
// format numbers using current locale
numberFormatter = NumberFormat.getNumberInstance(current);
// formatting the date
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");

String balanceString = numberFormatter.format(deposit.getBalance());
String estimatedBalanceString = String.valueOf(deposit
.getEstimated_balance());
String openingDate = sdf.format(deposit.getOpening_date());
String closingDate = sdf.format(deposit.getClosing_date());

TextView tvBalance = (TextView) view.findViewById(R.id.tv_balance);
TextView tvEstimatedBalance = (TextView) view
.findViewById(R.id.tv_estimated_balance);
TextView tvOpeningDate = (TextView) view
.findViewById(R.id.tv_opening_date);
TextView tvClosingDate = (TextView) view
.findViewById(R.id.tv_closing_date);

tvBalance.setText(balanceString);
tvEstimatedBalance.setText(estimatedBalanceString);
tvOpeningDate.setText(openingDate);
tvClosingDate.setText(closingDate);

return view;
}

@Override
public int getChildrenCount(int groupPosition) {
// return 1 because we wan only one member in every parent
return 1;
}

@Override
public Object getGroup(int groupPosition) {
return deposits.get(groupPosition).getType();
}

@Override
public int getGroupCount() {
return deposits.size();
}

@Override
public long getGroupId(int groupPosition) {
// TODO Auto-generated method stub
return groupPosition;
}

@Override
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
View view = convertView;
if(view == null){
view = inflater.inflate(R.layout.mbank_deposit_parent, parent, false);
}

TextView tvParentText = (TextView)view.findViewById(R.id.tv_deposit_parent);
// "groupPosition" is the position of the parent/group in the list
tvParentText.setText(deposits.get(groupPosition).getOpening_date().toString());

// set default picture
ImageView ivParent = (ImageView)view.findViewById(R.id.iv_deposit_parent);
ivParent.setImageResource(R.drawable.ic_launcher);

return view;
}

@Override
public boolean hasStableIds() {
return true;
}

@Override
public boolean isChildSelectable(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return false;
}

}[/syntax]

Использовал обьекты List'a как Parent и Child.
Нужно было сделать список, в котором Child это более подробный вариант Parent'a.
Поэтому getChildrenCount возвращает единицу.

assan
Сообщения: 48
Зарегистрирован: 24 мар 2013, 22:31

Re: Урок 45. Список-дерево ExpandableListView

Сообщение assan » 18 июн 2013, 15:00

по
http://code.google.com/p/tree-view-list ... %2Fpolidea
по рекомендации Yozch и Foenix
сделал тестовы проект, но в отличии от оригинала дерево встраивается (должно ) в Fragment.
компилится, запускается без ошибок, но не заполняет дерево.
может кто посмотрит?
поправит?
Вложения
X1_2.7z
по нажатию на желтое меню - должно выдвигаться дерево
(865.12 КБ) 283 скачивания

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 18 июн 2013, 15:42

У меня тоже дерево в фрагменте, если будет актуально и проект запустится посмотрю вечером, у меня на ноуте нет эклипса.
Данные откуда берешь?
Без фрагмента, просто на активити получилоь дерево построить? ТАм основная трудность запихнуть в него данные, в этом разобрался?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

assan
Сообщения: 48
Зарегистрирован: 24 мар 2013, 22:31

Re: Урок 45. Список-дерево ExpandableListView

Сообщение assan » 18 июн 2013, 16:35

Foenix писал(а):У меня тоже дерево в фрагменте, если будет актуально и проект запустится посмотрю вечером, у меня на ноуте нет эклипса.
Данные откуда берешь?
Без фрагмента, просто на активити получилоь дерево построить? ТАм основная трудность запихнуть в него данные, в этом разобрался?
данные пока "встроенные из примера" , теоритически разобрался, это будет следующий этап :)
без фрагмента запускается нормально
я пользую android studio, по моему мнению более стабильнее, чем ADT eclipse, но данный проект открывается и в ADT.
у тебя дерево в Fragment а не FragmentActivity?

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 18 июн 2013, 17:08

Дерево в фрагменте, фрагмет в ф.активити
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 18 июн 2013, 22:41

Посмотрела проект, слишком много лишнего наворочено, ни одного комментария что там где, извини, это слишком много времени нужно убить, чтоб во всем разобраться.
layout fragment2 вообще не открылся посмотреть что там. Куча каких-то библиотек, ни одного активити сходу не нашла..
Просто когда даешь проекты другим, нужно максимально упрощать пример, комментарии, главная активити, в общем - все по стандарту.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

assan
Сообщения: 48
Зарегистрирован: 24 мар 2013, 22:31

Re: Урок 45. Список-дерево ExpandableListView

Сообщение assan » 19 июн 2013, 06:08

Foenix писал(а):Посмотрела проект, слишком много лишнего наворочено, ни одного комментария что там где, извини, это слишком много времени нужно убить, чтоб во всем разобраться.
layout fragment2 вообще не открылся посмотреть что там. Куча каких-то библиотек, ни одного активити сходу не нашла..
Просто когда даешь проекты другим, нужно максимально упрощать пример, комментарии, главная активити, в общем - все по стандарту.
это кусок составлен из 2-х стронних примеров, комментарии оставлены как в оригиналах...

библтотек всего 1 - android-support-v4.jar
куча наворочена - это может android studio служебные наваял...

по layout fragment2 вопрос отдельный.
вот оригинал

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:treeView="http://schemas.android.com/apk/res/pl.polidea.treeview"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent">

    <ListView
            android:layout_width="0dip"
            android:layout_height="0dip"
            android:scrollbars="vertical"
            android:visibility="gone"> <!-- Just to test some attributes in IDE -->
    </ListView>

    <pl.polidea.treeview.TreeViewList
            android:id="@+id/mainTreeView"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            treeView:indicator_gravity="right|center_vertical"
            android:scrollbars="vertical"
            android:smoothScrollbar="true"/>
</LinearLayout>
при его открытии android studio выдает
Rendering Problems Missing styles. Is the correct theme chosen for this layout? Use the Theme combo box above the layout to choose a different layout, or fix the theme style references. Failed to find style 'treeViewListStyle' in current theme (3 similar errors not shown)
но открывает и все работает
вот мой начальный layout fragment2

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:orientation="vertical"
                android:background="#A55"
                android:id="@id/fr2rl">

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/txt1"
            android:id="@+id/textView"/>

</RelativeLayout>
в него я вставляю через CustomView TreeViewList (как в оригинале)
получаю

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:orientation="vertical"
                android:background="#A55"
                android:id="@id/fr2rl">

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/txt1"
            android:id="@+id/textView"/>

    <view
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            class="treeview.TreeViewList"
            android:id="@id/TreeViewFr"
            android:layout_alignParentTop="false"
            android:layout_below="@+id/textView"/>

</RelativeLayout>
и тоже сообщение Rendering Problems Missing styles....
ADT (android developer tools) после стого как в нём вставили class="treeview.TreeViewList" показывает с руганью, но при переоткрытии этого layout fragment2 отказывается показывать графику..

добавляю style="@style/treeViewListStyle"

Код: Выделить всё

<treeview.TreeViewList
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="false"
        android:layout_below="@+id/textView"
        indicator_gravity="right|center_vertical"
        android:id="@id/mainTreeView"
        android:background="#fff1e5"
        style="@style/treeViewListStyle"  />
получаю
Failed to find style 'treeViewListStyle' in current theme (3 similar errors not shown) Failed to parse file C:\ANDROID\project3\X1\res\drawable\tree_divider.xmlorg.xmlpull.v1.XmlPullParserException: Binary XML file line #6: invalid drawable tag ImageView
at android.graphics.drawable.Drawable.createFromXmlInner
at android.graphics.drawable.Drawable.createFromXml
at com.android.layoutlib.bridge.impl.ResourceHelper.getDrawable
at android.content.res.BridgeTypedArray.getDrawable
at android.widget.ListView.<init>
at treeview.TreeViewList.<init>(TreeViewList.java:53)
at treeview.TreeViewList.<init>(TreeViewList.java:45)

файл tree_divider.xml

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
           android:src="@android:drawable/divider_horizontal_dark"
           android:layout_width="fill_parent" android:layout_height="wrap_content"
           android:scaleType="fitXY" android:paddingLeft="5sp"
           android:paddingRight="5sp" android:paddingBottom="2sp"/>
ругается Element ImageView must be declared


Foenix, можешь свой код показать?

assan
Сообщения: 48
Зарегистрирован: 24 мар 2013, 22:31

Re: Урок 45. Список-дерево ExpandableListView

Сообщение assan » 19 июн 2013, 19:03

убрал лишнее,
к сожалению, то что описано постом выше не удалось исправить
в эклипсе fragment2 можносмотреть только в текстовом виде.
при дебаге заходит в конструктор AbstractTreeViewAdapter
и всё...
Вложения
X1_3.7z
(857.46 КБ) 258 скачиваний

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 20 июн 2013, 00:52

ок, посмотрю уже завтра с другого компа.
Код мой тебе ничем не поможет - там я слишком много меняла под себя и много закручено под данные.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 20 июн 2013, 00:54

Убери вообще весь мусор из проекта, оставь только дерево и его появление - для того чтоб именно протестировать и не отвлекаться на другое.
Плюс еще - покажи работающее дерево, где нет фрагмента?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

assan
Сообщения: 48
Зарегистрирован: 24 мар 2013, 22:31

Re: Урок 45. Список-дерево ExpandableListView

Сообщение assan » 20 июн 2013, 08:37

Foenix писал(а):Убери вообще весь мусор из проекта, оставь только дерево и его появление - для того чтоб именно протестировать и не отвлекаться на другое.
Плюс еще - покажи работающее дерево, где нет фрагмента?
в последнем (X1_3) лишнее убрано(кроме x_act в папке меню, но меню пока ни где не нужно).
там суть такая
в MainActivity поготавливается анимаия и поставляется "пустой" layout fragment1, который анимацией задвигается в сторону

Код: Выделить всё

//анимация
        fragment1 = new Fragment1();//пустой фрагмент
        fragment2 = new Fragment2();//фрагмент с деревом
        ft = getFragmentManager().beginTransaction();
        ft.setCustomAnimations(R.animator.slide_in_left1, R.animator.slide_in_right1);
        ft.replace(R.id.fragCont, fragment1);
        ft.addToBackStack(null);
        ft.commit();
и на нажатие текста назначаем смену фрагментов

Код: Выделить всё

/ищем тескст
        tview= (TextView) findViewById(  R.id.view1);
//определяем листенер и его действия (смена фрагментов)
        OnClickListener click1= new OnClickListener(){
            @Override
            public void onClick(View v) {
                ft = getFragmentManager().beginTransaction();
                if(fragment1.isVisible()){
                    ft.setCustomAnimations( R.animator.slide_in_right2,R.animator.slide_in_left1);
                    ft.replace(R.id.fragCont, fragment2);
                }else{
                    ft.setCustomAnimations( R.animator.slide_in_right1,R.animator.slide_in_left2);
                    ft.replace(R.id.fragCont, fragment1);
                }
                ft.commit();
            }
        };
//назначаем листенер тексту
        tview.setOnClickListener(click1);
при нажатии на текст, должен выдвигаться layout fragment2, и он выдвигается , но без дерева. Те методы, где идет заполнение дерева, не вызываются почему-то...
проблема в заполнении деревом layout fragment2.
видимо, потому как layout fragment2 в layout main_activity не фигурирует в явном виде.
Вложения
tree-view-list-android.7z
работающая версия с сайта
(960.1 КБ) 264 скачивания

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 45. Список-дерево ExpandableListView

Сообщение Foenix » 23 июн 2013, 11:26

Я имела ввиду - покажи свой проект с работающим деревом (с данными) где нет пока фрагмента. Нужно с ним вначале разобраться. Я хочу посмотреть как у тебя даные заполняются.
Вообще не пойму зачем сразу делать анимации, пока у тебя нормально данные не заполнены?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Ответить