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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
#1

Конвертировании ListActivity в Fragment - Программирование Android

29.03.2016, 11:51. Просмотров 231. Ответов 2
Метки нет (Все метки)

Здраствуйте, ребята пожалуйста помогите конвертировать Класс ListActivity в Fragment

Кликните здесь для просмотра всего текста

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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
public class AlbumsActivity extends ListActivity {
    // Connection detector
    ConnectionDetector cd;
     
    // Alert dialog manager
    AlertDialogManager alert = new AlertDialogManager();
     
    // Progress Dialog
    private ProgressDialog pDialog;
 
    // Creating JSON Parser object
    JSONParser jsonParser = new JSONParser();
 
    ArrayList<HashMap<String, String>> albumsList;
 
    // albums JSONArray
    JSONArray albums = null;
 
    // albums JSON url
    private static final String URL_ALBUMS = "http://site.ru";
 
    // ALL JSON node names
    private static final String TAG_ID = "id";
    private static final String TAG_NAME = "name";
    private static final String TAG_SONGS_COUNT = "songs_count";
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_albums);
         
        cd = new ConnectionDetector(getApplicationContext());
          
        // Check for internet connection
        if (!cd.isConnectingToInternet()) {
            // Internet Connection is not present
            alert.showAlertDialog(AlbumsActivity.this, "Internet Connection Error",
                    "Please connect to working Internet connection", false);
            // stop executing code by return
            return;
        }
 
        // Hashmap for ListView
        albumsList = new ArrayList<HashMap<String, String>>();
 
        // Loading Albums JSON in Background Thread
        new LoadAlbums().execute();
         
        // get listview
        ListView lv = getListView();
         
        /**
         * Listview item click listener
         * TrackListActivity will be lauched by passing album id
         * */
        lv.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> arg0, View view, int arg2,
                    long arg3) {
                // on selecting a single album
                // TrackListActivity will be launched to show tracks inside the album
                Intent i = new Intent(getApplicationContext(), TrackListActivity.class);
                 
                // send album id to tracklist activity to get list of songs under that album
                String album_id = ((TextView) view.findViewById(R.id.album_id)).getText().toString();
                i.putExtra("album_id", album_id);               
                 
                startActivity(i);
            }
        });     
    }
 
    /**
     * Background Async Task to Load all Albums by making http request
     * */
    class LoadAlbums extends AsyncTask<String, String, String> {
 
        /**
         * Before starting background thread Show Progress Dialog
         * */
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            pDialog = new ProgressDialog(AlbumsActivity.this);
            pDialog.setMessage("Listing Albums ...");
            pDialog.setIndeterminate(false);
            pDialog.setCancelable(false);
            pDialog.show();
        }
 
        /**
         * getting Albums JSON
         * */
        protected String doInBackground(String... args) {
            // Building Parameters
            List<NameValuePair> params = new ArrayList<NameValuePair>();
 
            // getting JSON string from URL
            String json = jsonParser.makeHttpRequest(URL_ALBUMS, "GET",
                    params);
 
            // Check your log cat for JSON reponse
            Log.d("Albums JSON: ", "> " + json);
 
            try {               
                albums = new JSONArray(json);
                 
                if (albums != null) {
                    // looping through All albums
                    for (int i = 0; i < albums.length(); i++) {
                        JSONObject c = albums.getJSONObject(i);
 
                        // Storing each json item values in variable
                        String id = c.getString(TAG_ID);
                        String name = c.getString(TAG_NAME);
                        String songs_count = c.getString(TAG_SONGS_COUNT);
 
                        // creating new HashMap
                        HashMap<String, String> map = new HashMap<String, String>();
 
                        // adding each child node to HashMap key => value
                        map.put(TAG_ID, id);
                        map.put(TAG_NAME, name);
                        map.put(TAG_SONGS_COUNT, songs_count);
 
                        // adding HashList to ArrayList
                        albumsList.add(map);
                    }
                }else{
                    Log.d("Albums: ", "null");
                }
 
            } catch (JSONException e) {
                e.printStackTrace();
            }
 
            return null;
        }
 
        /**
         * After completing background task Dismiss the progress dialog
         * **/
        protected void onPostExecute(String file_url) {
            // dismiss the dialog after getting all albums
            pDialog.dismiss();
            // updating UI from Background Thread
            runOnUiThread(new Runnable() {
                public void run() {
                    /**
                     * Updating parsed JSON data into ListView
                     * */
                    ListAdapter adapter = new SimpleAdapter(
                            AlbumsActivity.this, albumsList,
                            R.layout.list_item_albums, new String[] { TAG_ID,
                                    TAG_NAME, TAG_SONGS_COUNT }, new int[] {
                                    R.id.album_id, R.id.album_name, R.id.songs_count });
                     
                    // updating listview
                    setListAdapter(adapter);
                }
            });
 
        }
 
    }
}


вот шаблон конвертации

Java
1
2
3
4
5
6
7
8
9
10
11
public class PanelFragment extends Fragment 
{
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
 
        View rootView = inflater.inflate(R.layout.activity_albums, container, false);
 
    return rootView;
    }
 }


Заранее спасибо.

Добавлено через 16 часов 44 минуты
Ребята никто не сможет да помочь пожалуйста очень нужно.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2016, 11:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Конвертировании ListActivity в Fragment (Программирование Android):

Обновление fragment из другого fragment - Программирование Android
Добрый вечер всем!! Подскажите пожалуйста как обновить один фрагмент из другого (а именно TextView и ArrayAdapter)?

ListActivity - Программирование Android
Всем доброго времени суток! Вот сегодня столкнулся с проблемой почему когда переименовываю Activity в ListActivity возникает ошибка?...

ListActivity - Программирование Android
Добрый день. Нужно реализовать дополнение нового эоемента в список ListActivity по нажатию каойл ибо кнопки. Стандартно делается череза...

Шрифт в ListActivity - Программирование Android
Где изменить размер текста? public class MyListActivity extends ListActivity { public void onCreate(Bundle icicle) { ...

Переход из ListActivity в Фрагмент - Программирование Android
Всех с праздниками. Подскажите как реализовать переход из Activity в котором есть ListView во фрагмент? (в списоке listView) ...

Не работает ActionBar в ListActivity - Программирование Android
Почему ActionBar не отображается? public class FileManager extends ListActivity{ ... @Override public boolean...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MonStar
19 / 19 / 3
Регистрация: 10.04.2011
Сообщений: 225
31.03.2016, 10:29 #2
В Android фрагменты можно встраивать внутрь Activity или друг в друга (что бы было проще, фрагмент выступает в качестве View, т.е. встраивается в неё). Соответственно фрагмент живет своей жизнью, не такой как простые View и зависит от жизни Activity.
Вам нужно взять ListFragment, перенести туда код из Activity и встроить этот фрагмент в любую Activity.

Почитайте что такое фрагменты и как с ними работать
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
31.03.2016, 16:33  [ТС] #3
Я уже разобрался и с этим вопрос.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2016, 16:33
Привет! Вот еще темы с ответами:

Переход с ListActivity на другую активность - Программирование Android
Ребят подскажите есть ListActivity в нем список, как сделать что бы при нажатию на определенные строки списка он переходил на другую...

Программа вылетает при прокрутке ListActivity - Программирование Android
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Моя программа вылетает при прокрутке ListActivity вниз... Как это...

Программа вылетает при переходе на ListActivity - Программирование Android
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Моя программа просто вылетает при переходе на ListActivity. Ниже есть...

Как сохранить состояние выделенных checkbox и list data в Listactivity? - Программирование Android
Здравствуйте. Было задание сделать ListView c CheckBox, при нажатии на кнопку Add добавляется случайное число в ListActivity. Если выделить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru