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

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

Войти
Регистрация
Восстановить пароль
 
AlexIach
0 / 0 / 0
Регистрация: 07.02.2015
Сообщений: 67
#1

Обработка FloatingActionButton в классе не наследующим класс Activity - Программирование Android

30.10.2015, 12:51. Просмотров 370. Ответов 3
Метки нет (Все метки)

Доброго времени суток. Пишу проект и столкнулся с такой проблемой. В своём приложении использую Tabs в ToolBar для удобного просмотра меню. Столкнулся с проблемой, не знаю как обработать LayOut элементы к примеру кнопку что бы перейти в другое Activity. Добавляю кнопку в мой LayOut для данного Tab-а
XML
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
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
 
 
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/imageView3"
        android:src="@drawable/world_map"/>
 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/aboutFindMe"
        android:id="@+id/textView3"
        android:textStyle="bold"
        android:textSize="20dp"
        android:paddingLeft="57dp"/>
 
    <com.melnykov.fab.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|right"
        android:layout_margin="16dp"
        android:src="@drawable/ic_plus"
        fab:fab_colorNormal="@color/colorPrimary"
        fab:fab_colorPressed="@color/colorPrimaryDark" />
</LinearLayout>
Затем создаю класс FindFragment который наследует класс Fragment. И прикрепляю ему созданное LayOut.
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
package com.qoobico.remindme.fragment;
 
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
 
import com.qoobico.remindme.R;
 
public class FindFragment extends Fragment {
    private static final int LAYOUT = R.layout.find_fragment;
    private View view;
 
    public static FindFragment getInstance() {
        Bundle args = new Bundle();
        FindFragment fragment = new FindFragment();
        fragment.setArguments(args);
 
        return fragment;
    }
 
    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        view = inflater.inflate(LAYOUT, container, false);
        /*
        final FloatingActionButton findMe = (com.melnykov.fab.FloatingActionButton)findViewById(R.id.fab);
        findMe.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,LoadingActivity.class);
            }
        });
    */
        return view;
    }
}
По идее обрабатывать кнопку я должен именно в классе FindFragment , но я не могу даже найти эту кнопку использую используя метод findViewById. И не могу перейти с Activity в котором находится данный ToolBar.
Подскажите как решить мою проблему.

Добавлено через 18 минут
Прошу прощения, сглупил сильно, как найти кнопку и присвоить её обработчик я узнал как.
Java
1
2
3
4
5
6
7
 FloatingActionButton findMe = (FloatingActionButton) view.findViewById(R.id.fab);
 
        findMe.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Log.d(LOG_TAG, "FloatingActionButtonclick in FindFragment");
            }
        });
Теперь осталось узнать как перейти с одного Activity в другое из Fragment
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2015, 12:51     Обработка FloatingActionButton в классе не наследующим класс Activity
Посмотрите здесь:
Android В классе не Activity доступ к Resources
Обработка onTouchEvent в Activity Android
Android Обработка NFC в запущенной Activity
Как наследовать класс activity Android
Передача значения переменной Activity в другой класс Android
Обработка нажатий клавиш громкости непосредственно Service (Activity уже закрыто) Android
Android Как можно вызывать один класс в разных activity?
Android Не открывается новое окно у которого класс наследуется не от Activity
Анимация FloatingActionButton в RecyclerView Android
Затемнить экран по нажатию на FloatingActionButton Android
Android Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity
Android Android - Передача данных с одного Activity на другое Activity

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2403 / 1848 / 579
Регистрация: 12.05.2014
Сообщений: 6,577
Завершенные тесты: 1
30.10.2015, 14:44     Обработка FloatingActionButton в классе не наследующим класс Activity #2
потому что findViewByID надо вызывать на view, которое родилось на пару строк выше в коде фрагмента

разметка странная, что делает FAB в LinearLayout-е?
она, по идее должна быть в разметке активити, где-то под Coordinator лаяутом

пока писал ответ - все решилось

Добавлено через 1 минуту
Цитата Сообщение от AlexIach Посмотреть сообщение
Теперь осталось узнать как перейти с одного Activity в другое из Fragment
так же как и переходить из одного активити - в другое, никакой разницы нет
Alex Ziko
2 / 2 / 1
Регистрация: 27.07.2015
Сообщений: 32
30.10.2015, 15:09     Обработка FloatingActionButton в классе не наследующим класс Activity #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
получаешь контекст активити и также переходишь:
getActivity.startActivity(new Intent(getActivity, SomeActivity,class));
AlexIach
0 / 0 / 0
Регистрация: 07.02.2015
Сообщений: 67
31.10.2015, 11:03  [ТС]     Обработка FloatingActionButton в классе не наследующим класс Activity #4
Спасибо всем за помощь
Yandex
Объявления
31.10.2015, 11:03     Обработка FloatingActionButton в классе не наследующим класс Activity
Ответ Создать тему
Опции темы

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