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

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

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

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

30.10.2015, 12:51. Просмотров 405. Ответов 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 - Программирование Android
У меня есть класс Joke, который не является activity. В MainActivity создаю экземпляр класса Joke : Joke joke = new Joke(this); А в...

Обработка onTouchEvent в Activity - Программирование Android
Хочу в активити обрабатывать все прикосновения, независимого от того, были ли они на кнопке или на свободном пространстве. Однако после...

Обработка NFC в запущенной Activity - Программирование Android
Доброго времени суток. Программа для чтения и записи NFC меток. Когда телефон подношу к NFC устройству телефон предлагает список...

Как наследовать класс activity - Программирование Android
Написал класс activity1 в котором программно создан layout1. Как использовать мой класс в новом создаваемом приложении? какой нужен...

Передача значения переменной Activity в другой класс - Программирование Android
Есть активность: public class Menu extends Activity { OnClickListener lt; EditText Day, Month, Year, BirthDay, BirthMonth,...

Обработка нажатий клавиш громкости непосредственно Service (Activity уже закрыто) - Программирование Android
Уважаемые форумчане! Буду благодарен за любую помощь. Написал добрую часть приложения для Android, состоящего из Активности и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Pablito
2473 / 1918 / 595
Регистрация: 12.05.2014
Сообщений: 6,742
Завершенные тесты: 1
30.10.2015, 14:44 #2
потому что findViewByID надо вызывать на view, которое родилось на пару строк выше в коде фрагмента

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

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

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

Не открывается новое окно у которого класс наследуется не от Activity - Программирование Android
Помогите, у меня две активности, одна базовая наследуется от Activity и другая активность его класс наследуется от ListActivity. При...

Как можно вызывать один класс в разных activity? - Программирование Android
Всем привет! Пишу плеер типа ютюба и нужно, чтобы один класс вызывался в нескольких активти. я думаю нет смысла писать код плеера в каждой...

Анимация FloatingActionButton в RecyclerView - Программирование Android
Хочу сделать анимацию появления и скрытия Floating Action Button при скроле RecyclerView. Сделал по этой статье. Работает, но когда в...

Затемнить экран по нажатию на FloatingActionButton - Программирование Android
Нужно затемнить и заблокировать все элементы на экране по нажатию на floatingActionButton, при этом добавить две новые кнопки. ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
31.10.2015, 11:03
Ответ Создать тему
Опции темы

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