Форум программистов, компьютерный форум CyberForum.ru

ListFragment - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android RecyclerView + Swipe влево/вправо http://www.cyberforum.ru/android-dev/thread1573155.html
Пытаюсь сделать на элементах списка возможность их сдвига в стороны, и в зависимости от стороны выполнять разные действия. По принципу как на контактах в телефонной книге - звонок и смс. Никак не могу понять, как реализовать. Может быть есть где-то пример похожий?
Android По поводу элемента (Spinner) Ребят. Как реализовать Есть элемент spinner(К которому прикреплены "Месяцы Года"); Как связать элемент spinner и switch(){ Т.е например, если человек выбрал в spinner - Январь. - то - /switch(spinner){ case январь: // а здесь например какое то действие. break; http://www.cyberforum.ru/android-dev/thread1573142.html
Android Геокодирование. getFromLocationName() возвращает null
По адресу (город, улица, дом) пытаюсь получить координаты. С некоторых пор почти всегда getFromLocationName() возвращает null. Хотя ранее по этим же адресам нормально получал координаты. И только иногда возвращает массив. Есть ли другие способы получения координат по адресу? Добавлено через 4 часа 0 минут Вроде бы нашел вариант. С помощью Geocoding API обращаюсь по HTTP к адресу...
Android Юбилей и День рождения в контактах Гугл
Приветствую. Подскажите, пожалуйста, для чего в Контактах есть тип события Юбилей? Вот я вывожу список контактов у которых есть дни рождения. Меня попросили вывести и юбилеи. Я вывел. А что это дает не понял. Ну, например, Я. День рождения сегодня, а юбилей завтра. Юбилей чего? Где собака порылась?
Android Реально ли создать SurfaceView в RecyclerView http://www.cyberforum.ru/android-dev/thread1572939.html
Хочу реализовать SurfaceView элементы в RecyclerView для создания рисунков при помощи тача. Возможно ли такое? Может кто нибудь знает, как можно реализовать другим образом?
Android Чтение и запись xml файла на SD-карту Мне нужно из БД сохранять определенную информацию в файл (это будет инфа пользователя), а потом загружать при необходимости. И таких файлов может быть несколько. По отдельности я нашел эти действия. Запись файла на SD: void writeFileSD() { // проверяем доступность SD if (!Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) { ... подробнее

Показать сообщение отдельно
Dont
0 / 0 / 0
Регистрация: 06.11.2015
Сообщений: 2

ListFragment - Android

06.11.2015, 16:04. Просмотров 268. Ответов 2
Метки (Все метки)

В ListFragment выводятся файлы, надо сделать возврат по кнопке "назад" для возврата в папку на уровень выше.
Вот код Activity
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package com.mycompany.mylistfragment;
 
import android.app.*;
import android.os.*;
import android.view.*;
 
public class MainActivity extends Activity implements SimpleListFragment.OnArticleSelectedListener
{
 
    @Override
    public void onArticleSelected(String articleStr)
    {
        selectItem(articleStr);
    }
 
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        if (savedInstanceState == null)
        {
            selectItem("/sdcard");
        }
    }
    private void selectItem(String str)
    {
        str = str != null ? str : "/";
        SimpleListFragment fragment = SimpleListFragment.newInstance(str);
        getFragmentManager().beginTransaction().addToBackStack(null).replace(R.id.container, fragment).commit();
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        menu.add(0, 1, 0, "Root");
        menu.add(0, 2, 0, "SD card");
        menu.add(1, 3, 0, "Exit");
        return super.onCreateOptionsMenu(menu);
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item)
    {
        switch (item.getItemId())
        {
            case 1:
                selectItem("/");
                break;
            case 2:
                selectItem("/sdcard");
                break;
            case 3:
                finish();
        }
        return super.onOptionsItemSelected(item);
    }
 
}
Вот код ListFragment
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
package com.mycompany.mylistfragment;
import android.app.*;
import android.view.*;
import android.os.*;
import android.widget.*;
import java.io.*;
import java.util.*;
import java.text.*;
import android.content.*;
import android.net.*;
 
public class SimpleListFragment extends ListFragment
{
    public static SimpleListFragment newInstance(String str)
    {
        SimpleListFragment fragment = new SimpleListFragment();
        Bundle bundle = new Bundle();
        bundle.putString("lastpath", str);
        fragment.setArguments(bundle);
        return fragment;
    }
 
    String CURRENT_PATH;
    private View rootView;
    private TextView tvPath;
    File[] files;
    List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>();
    private static final String[] from = {"icon", "name", "modify"};
    private static final int[] to = {R.id.file_icon, R.id.file_name, R.id.file_modify};
    SimpleAdapter mAdapter;
    String uri;
    OnArticleSelectedListener mListener;
 
    public interface OnArticleSelectedListener
    {
        public void onArticleSelected(String articleStr);
    }
 
    @Override
    public void onAttach(Activity activity)
    {
        super.onAttach(activity);
        try
        {
            mListener = (OnArticleSelectedListener) activity;
        }
        catch (ClassCastException e)
        {
            throw new ClassCastException(activity.toString() + "error");
        }
    }
 
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        CURRENT_PATH = getArguments().getString("lastpath", "/");
        File f = new File(CURRENT_PATH);
        files = f.listFiles();
        Map<String, Object> map;
        long size;
        double fileSize;
        java.text.DecimalFormat df = new java.text.DecimalFormat("#0.00");
        String modTime;
        String strSize;
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Arrays.sort(files);
        super.onCreate(savedInstanceState);
        for (int i = 0; i < files.length; i++)
        {
            modTime = dateFormat.format(new Date(new File(files[i].getAbsolutePath()).lastModified()));
            map = new HashMap<String, Object>();
            if (files[i].isFile())
            {
                size = files[i].length();
                if (size >= 1073741824)
                {
                    fileSize = (double) size / 1073741824.0;
                    strSize = df.format(fileSize) + "G";
                }
                else if (size >= 1048576)
                {
                    fileSize = (double) size / 1048576.0;
                    strSize = df.format(fileSize) + "M";
                }
                else if (size >= 1024)
                {
                    fileSize = (double) size / 1024;
                    strSize = df.format(fileSize) + "K";
                }
                else
                {
                    strSize = Long.toString(size) + "B";
                }
                modTime = strSize != null ? modTime + "   " + strSize : modTime;
            }
            map.put("name", files[i].getName());
            map.put("icon", files[i].isFile() ? R.drawable.file : R.drawable.folder);
            map.put("modify", modTime);
            listItems.add(map);
        }
    }
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
    {
        rootView = inflater.inflate(R.layout.layout_fragment, container, false);
        tvPath = (TextView) rootView.findViewById(R.id.tvpath);
        tvPath.setText(CURRENT_PATH);
        return rootView;
    }
 
    @Override
    public void onActivityCreated(Bundle savedInstanceState)
    {
        mAdapter = new SimpleAdapter(getActivity(), listItems, R.layout.item_list, from, to);
        super.onActivityCreated(savedInstanceState);
        setListAdapter(mAdapter);
    }
 
    @Override
    public void onListItemClick(ListView l, View v, int position, long id)
    {
        uri = files[position].getPath();
        if (files[position].isFile())
        {
            startActivity(new Intent(Intent.ACTION_VIEW).setDataAndType(Uri.fromFile(new File(uri)), "*/*"));
        }
        else if (files[position].isDirectory() && files[position].listFiles() != null)
        {
            mListener.onArticleSelected(uri);
        }
        else
        {
            Toast.makeText(getActivity(), "No permission", Toast.LENGTH_LONG).show();
        }
        super.onListItemClick(l, v, position, id);
    }
 
}
Как тут грамотно сделать возврат по кнопке "назад"?
Миниатюры
ListFragment  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 09:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru