Вниз  Android-программирование (1-ые посты)
- 5.11.2015 / 09:33
Dont
  Пользователь

Dont 
Сейчас: Offline
Может кто подскажет как во фрагменте нормально реализовать кнопку "назад"
  1. package com.mycompany.mylistfragment;
  2.  
  3. import android.app.*;
  4. import android.os.*;
  5. import android.view.*;
  6.  
  7. public class MainActivity extends Activity implements SimpleListFragment.OnArticleSelectedListener
  8. {
  9.  
  10.     @Override
  11.     public void onArticleSelected(String articleStr)
  12.     {
  13.         selectItem(articleStr);
  14.     }
  15.  
  16.     @Override
  17.     protected void onCreate(Bundle savedInstanceState)
  18.     {
  19.         super.onCreate(savedInstanceState);
  20.         setContentView(R.layout.activity_main);
  21.         if (savedInstanceState == null)
  22.         {
  23.             selectItem("/sdcard");
  24.         }
  25.     }
  26.     private void selectItem(String str)
  27.     {
  28.         str = str != null ? str : "/";
  29.         SimpleListFragment fragment = SimpleListFragment.newInstance(str);
  30.         getFragmentManager().beginTransaction().addToBackStack(null).replace(R.id.container, fragment).commit();
  31.     }
  32.  
  33.     @Override
  34.     public boolean onCreateOptionsMenu(Menu menu)
  35.     {
  36.         menu.add(0, 1, 0, "Root");
  37.         menu.add(0, 2, 0, "SD card");
  38.         menu.add(1, 3, 0, "Exit");
  39.         return super.onCreateOptionsMenu(menu);
  40.     }
  41.  
  42.     @Override
  43.     public boolean onOptionsItemSelected(MenuItem item)
  44.     {
  45.         switch (item.getItemId())
  46.         {
  47.             case 1:
  48.                 selectItem("/");
  49.                 break;
  50.             case 2:
  51.                 selectItem("/sdcard");
  52.                 break;
  53.             case 3:
  54.                 finish();
  55.         }
  56.         return super.onOptionsItemSelected(item);
  57.     }
Нужно как-то сделать возврат в папки на уровень выше кнопкой назад, чтоб при этом обновлялось содержимое списка, на случай изменений.
Тестовое приложение чтоб понятнее было о чем речь прикреплено

Изменено Dont (5.11 / 09:35) (всего 1 раз)


Прикрепленные файлы:
MyListFragment_(…).apk (26.5 кб.) Скачано 296 раз
- 5.11.2015 / 10:33
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Dont, я так понимаю, на каждый переход в папку создаётся новый фрагмент? Если так, то это не экономно. Можно во фрагменте всё сделать - переопределить omBackPressed и пока мы не находимся в корне переходить на уровень выше. Как только дошли до корневой папки и нажали Назад - закрываем фрагмент.
__________________
 let live
- 5.11.2015 / 13:52
Dont
  Пользователь

Dont 
Сейчас: Offline
aNNiMON, Это описано в документации и называется "Создание обратного вызова события для операции" :-D http://developer.android.com/i...nicatingWithActivity
Вот как сейчас реализовано в самом ListFragment
  1.  public static SimpleListFragment newInstance(String str)
  2.     {
  3.         SimpleListFragment fragment = new SimpleListFragment();
  4.         Bundle bundle = new Bundle();
  5.         bundle.putString("lastpath", str);
  6.         fragment.setArguments(bundle);
  7.         return fragment;
  8.     }
А как реализовать onBackPressed()?
- 5.11.2015 / 16:05
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Dont, вот типа такого можно.
__________________
 let live
- 5.11.2015 / 16:16
Dont
  Пользователь

Dont 
Сейчас: Offline
aNNiMON, В ListFragment не понятно как реализовать
- 5.11.2015 / 16:26
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Dont, сделай обычный Fragment и помести в него ListView. Так гибче будет.
__________________
 let live
- 5.11.2015 / 16:31
Dont
  Пользователь

Dont 
Сейчас: Offline
Так вроде ListFragment как раз для списков сделали.
Сейчас вот как
Открыть спойлер


Изменено Magatino (5.11 / 16:44) (всего 1 раз)
- 20.11.2015 / 20:20
mcdevil
  Пользователь

mcdevil 
Сейчас: Offline
Дайте пожалуйста ссылку на android ide для Android, желательно прямую, пробовал скачать 4pda даже зарегистрировался, но ничего не выходит, 404 not found
- 20.11.2015 / 20:23
defaultday
  Пользователь

defaultday 
Сейчас: Offline
mcdevil, на spaces.ru в поиск напиши AIDE там есть крякнутая
- 20.11.2015 / 20:29
mcdevil
  Пользователь

mcdevil 
Сейчас: Offline
defaultday, Я не могу войти на spaces, не получается через комп.
Наверх  Всего сообщений: 4453
Фильтровать сообщения
Поиск по теме
Файлы топика (184)