Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
42 / 42 / 5
Регистрация: 25.03.2014
Сообщений: 444

Fragment и ListView

18.12.2015, 23:33. Показов 1224. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача необходимо сделать 2 фрагмента в 1-находится Listview в нем кнопки подгружаемые из файла,
во 2 фрагменте описание как сделать так чтобы по нажатию на кнопки в listview работал выводил второй фрагмент информацию
Т.е нажали на елемент списка снизу 2 фрагмент отобразил инфу можно ли такое вообще дайте пример сайт ссылку видео что нибудь
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.12.2015, 23:33
Ответы с готовыми решениями:

listView c адаптером в Fragment
Всем привет! Хочу вывести listview с картинкой и текстами в Fragment В Activity все получилось, а в фрагменте вылетает. ...

Список ListView из Fragment
Добрый вечер. Вот такой вопрос и помощь ваша очень нужна Вот на скрине я указал все что нужно так примерно. У меня...

JSON из URL в ListView | Fragment
Здравствуйте! Есть фрагмент показывающий listView. Также есть локальный сайт (http://stat/api/main/) возвращающий Json-массив. Как парсить...

2
 Аватар для YuraAAA
1605 / 1337 / 291
Регистрация: 25.10.2009
Сообщений: 3,487
Записей в блоге: 2
18.12.2015, 23:54
Dgaizer, так а в чём проблема? Ловим нажатие в листе, упаковываем объект в bundle и переключаем фрагмент.
1
42 / 42 / 5
Регистрация: 25.03.2014
Сообщений: 444
18.12.2015, 23:59  [ТС]
YuraAAA, да я не так давно в андроиде не могу разобраться все что находил одни ошибки
activity_main.xml

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
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.home.fragmentimytb.MainActivity">
 
 
 
 
 
    <fragment
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:name="com.example.home.fragmentimytb.Fragment2"
        android:id="@+id/fragment2"
        android:layout_centerVertical="true"
        android:layout_alignParentStart="true" />
 
    <fragment
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:name="com.example.home.fragmentimytb.Fragment1"
        android:id="@+id/fragment"
        android:layout_above="@+id/fragment2"
        android:layout_alignParentEnd="true"
        android:layout_marginBottom="39dp"
        android:layout_alignParentTop="true" />
 
    <ListView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/listView" />
 
 
</RelativeLayout>
MainActivity.java
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
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
 
public class MainActivity extends Activity implements Fragment1.OnSelectedButtonListener{
 
    Fragment fragment;
    FragmentTransaction fTrans;
 
    final String TAG = "run activity";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        ListView lvkot = (ListView) findViewById(R.id.listView);
        ArrayAdapter adapter = new ArrayAdapter(this, R.layout.my_itimsi);
 
 
 
 
 
 
 
    }
    @Override
    public void onButtonSelected(int buttonIndex) {
// подключаем FragmentManager
         android.app.FragmentManager fragmentManager = getFragmentManager();
 
        // Получаем ссылку на второй фрагмент по ID
        Fragment2 fragment2 = (Fragment2) fragmentManager
                .findFragmentById(R.id.fragment2);
 
        // Выводим нужную информацию
        if (fragment2 != null)
            fragment2.setDescription(buttonIndex);
    }
 
 
}
Fragment1.java
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
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
 
/**
 * Created by Home on 18.12.2015.
 */
public class Fragment2 extends android.app.Fragment {
 
    private TextView mInfoTextView;
    private ImageView mCatImageView;
    private String[] mCatDescriptionArray;
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
 
                             Bundle savedInstanceState) {
       // return super.onCreateView(inflater, container, savedInstanceState);
 
        View rootView =
                inflater.inflate(R.layout.fragment2 , container , false);
 
        mInfoTextView = (TextView) rootView.findViewById(R.id.textView1);
        mCatImageView = (ImageView) rootView.findViewById(R.id.imageView1);
 
        // загружаем массив из ресурсов
        mCatDescriptionArray = getResources().getStringArray(R.array.cats);
 
 
        return rootView;
 
    }
 
    public void setDescription(int buttonIndex) {
        String catDescription = mCatDescriptionArray[buttonIndex];
        mInfoTextView.setText(catDescription);
 
        switch (buttonIndex) {
            case 1:
                mCatImageView.setImageResource(R.drawable.riz);
                break;
            case 2:
                mCatImageView.setImageResource(R.drawable.zenit);
                break;
            case 3:
                mCatImageView.setImageResource(R.drawable.aa);
                break;
 
            default:
                break;
        }
    }
}
Fragment2.java
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
package com.example.home.fragmentimytb;
 
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
 
 
 
/**
 * Created by Home on 18.12.2015.
 */
public class Fragment1 extends android.app.Fragment implements  View.OnClickListener {
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
 
                             Bundle savedInstanceState) {
        // return super.onCreateView(inflater, container, savedInstanceState);
 
 
        View rootView = inflater.inflate(R.layout.fragment1, container, false);
 
        Button button1 = (Button) rootView.findViewById(R.id.button1);
        Button button2 = (Button) rootView.findViewById(R.id.button2);
        Button button3 = (Button) rootView.findViewById(R.id.button3);
 
        button1.setOnClickListener(this);
        button2.setOnClickListener(this);
        button3.setOnClickListener(this);
 
 
 
 
 
        return rootView;
    }
    public interface OnSelectedButtonListener {
        void onButtonSelected(int buttonIndex);
    }
 
    @Override
    public void onClick(View v) {
 
        int buttonIndex = translateIdToIndex(v.getId());
 
        OnSelectedButtonListener listener = (OnSelectedButtonListener) getActivity();
        listener.onButtonSelected(buttonIndex);
        Toast.makeText(getActivity(), "Вы нажали на кнопку",
                Toast.LENGTH_SHORT).show();
 
 
    }
 
 
    int translateIdToIndex(int id) {
        int index = -1;
        switch (id) {
            case R.id.button1:
                index = 1;
                break;
            case R.id.button2:
                index = 2;
                break;
            case R.id.button3:
                index = 3;
                break;
        }
        return index;
    }
}
ВОТ ЧТО КУДА МНЕ ЗАПИЛИТЬ

Добавлено через 1 минуту
YuraAAA,
fragment1.xml
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
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
 
 
        <Button
            android:id="@+id/button1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Рыжик" />
 
        <Button
            android:id="@+id/button2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Барсик" />
 
        <Button
            android:id="@+id/button3"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Мурзик" />
    
</LinearLayout>
fragment2.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:weightSum="1">
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Описание кота"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textAlignment="center" />
 
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="fitCenter"
        android:src="@drawable/abc_scrubber_control_to_pressed_mtrl_000" />
 
</LinearLayout>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.12.2015, 23:59
Помогаю со студенческими работами здесь

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

ListView. После добавления кнопки перестал быть доступен сам ListView
Кастомизировал ListView с помощью нескольких TextView. Но после того, как добавил ImageButton сам список стал недоступен для клика, а...

Как правильно скролить ListView который находится внутри другого ListView?
Доброго! Впихнул один ListView во внутрль другого, получил интересный эффект... если жмакнуть по элементу верхнего ListView, то скролл...

Отобразить в ListView подробную информацию об объекте, выбранном в другом ListView
Имеется класс Диск и класс Трек. Класс Диск содержит лист треков. На форме имеется 2 listView'а, в один listView пользователь добавляет...

Listview вывод данных и переход по нажатию на другой Listview SQLite
Доброго извините за название темы, долго не мог сформировать название, В общем у меня беда с пытаюсь написать программу где первый экран...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru