Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Vladislavij
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 15
1

Переход на фрагмент при открытии приложения

07.03.2016, 19:06. Просмотров 359. Ответов 4

Доброго времени суток! Недавно начал заниматься разработкой Android приложения, разобрался с NavDrawer но столкнулся с проблемой, при заполнении главного активити на него накладываются другие, решил исправить это с помощью перехода на фрагмент сразу при открытии приложения, каким образом это можно реализовать.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2016, 19:06
Ответы с готовыми решениями:

Вызов метода при каждом открытии приложения
Мне нужно, что бы при открытии приложения вызывался определенный метод. Если...

Переход из ListActivity в Фрагмент
Всех с праздниками. Подскажите как реализовать переход из Activity в котором...

Как восстановить значения при открытии приложения после нажатия кнопки назад
Как гарантированно вызвать onSaveInstanceState. Столкнулся с такой ситуацией....

Переход из уведомления в фрагмент активити
Здравствуйте.Вывожу уведомление в статус бар, нужно чтобы по нажатию на него...

Переход через фрагмент на активити
Добрый день ! Какой код должен быть чтобы на "активити 1" с открытым ...

4
Pablito
2767 / 2198 / 744
Регистрация: 12.05.2014
Сообщений: 7,711
Завершенные тесты: 1
07.03.2016, 19:11 2
код ?
0
Vladislavij
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 15
07.03.2016, 19:36  [ТС] 3
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
public class MainActivity extends AppCompatActivity
        implements NavigationView.OnNavigationItemSelectedListener {
 
 
 
    FragmentCategory fcategories;
    FragmentMarker fmarker;
    FragmentNew fnew;
    FragmentSearch fsearch;
    FragmentSend fsend;
    FragmentShare fshare;
    FragmentMain fmain;
 
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
 
 
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
 
        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();
            }
        });
 
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
                this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
        drawer.setDrawerListener(toggle);
        toggle.syncState();
 
        NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);
 
        fcategories = new FragmentCategory();
        fmarker = new FragmentMarker();
        fnew = new FragmentNew();
        fsearch = new FragmentSearch();
        fsend = new FragmentSend();
        fshare = new FragmentShare();
        fmain = new FragmentMain();
 
 
    }
 
 
    @Override
    public void onBackPressed() {
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        if (drawer.isDrawerOpen(GravityCompat.START)) {
            drawer.closeDrawer(GravityCompat.START);
        } else {
            super.onBackPressed();
        }
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
 
    @SuppressWarnings("StatementWithEmptyBody")
    @Override
    public boolean onNavigationItemSelected(MenuItem item) {
        // Handle navigation view item clicks here.
        int id = item.getItemId();
 
        FragmentTransaction ftrans = getFragmentManager().beginTransaction();
 
        if (id == R.id.nav_main) {
            ftrans.replace(R.id.container, fmain);
        } else if (id == R.id.nav_camera) {
            ftrans.replace(R.id.container, fnew);
        } else if (id == R.id.nav_gallery) {
            ftrans.replace(R.id.container, fcategories);
        } else if (id == R.id.nav_slideshow) {
            ftrans.replace(R.id.container, fsearch);
        } else if (id == R.id.nav_manage) {
            ftrans.replace(R.id.container, fmarker);
        } else if (id == R.id.nav_share) {
            ftrans.replace(R.id.container, fshare);
        } ftrans.commit();
 
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        drawer.closeDrawer(GravityCompat.START);
        return true;
    }
 
    public void goMBT (View v) {
        Intent intent = new Intent(this, MbtActivity.class);
        startActivity(intent);
    }
 
    public void showSettings(MenuItem item) {
        Intent intent = new Intent(this, MyPreferenceActivity.class);
        startActivity(intent);
    }
    
}
Добавлено через 2 минуты
Сверху код MainActivity, а вот код фрагмента который нужно выводить:

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
package com.example.politech.feelbuy.fragments;
 
import android.content.Context;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
 
import com.example.politech.feelbuy.R;
 
/**
 * A simple {@link Fragment} subclass.
 * Activities that contain this fragment must implement the
 * {@link FragmentMain.OnFragmentInteractionListener} interface
 * to handle interaction events.
 * Use the {@link FragmentMain#newInstance} factory method to
 * create an instance of this fragment.
 */
public class FragmentMain extends android.app.Fragment {
    // TODO: Rename parameter arguments, choose names that match
    // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
    private static final String ARG_PARAM1 = "param1";
    private static final String ARG_PARAM2 = "param2";
 
    // TODO: Rename and change types of parameters
    private String mParam1;
    private String mParam2;
 
    private OnFragmentInteractionListener mListener;
 
    public FragmentMain() {
        // Required empty public constructor
    }
 
    /**
     * Use this factory method to create a new instance of
     * this fragment using the provided parameters.
     *
     * @param param1 Parameter 1.
     * @param param2 Parameter 2.
     * @return A new instance of fragment FragmentMain.
     */
    // TODO: Rename and change types and number of parameters
    public static FragmentMain newInstance(String param1, String param2) {
        FragmentMain fragment = new FragmentMain();
        Bundle args = new Bundle();
        args.putString(ARG_PARAM1, param1);
        args.putString(ARG_PARAM2, param2);
        fragment.setArguments(args);
        return fragment;
    }
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (getArguments() != null) {
            mParam1 = getArguments().getString(ARG_PARAM1);
            mParam2 = getArguments().getString(ARG_PARAM2);
        }
    }
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_main, container, false);
    }
 
    // TODO: Rename method, update argument and hook method into UI event
    public void onButtonPressed(Uri uri) {
        if (mListener != null) {
            mListener.onFragmentInteraction(uri);
        }
    }
 
    @Override
    public void onAttach(Context context) {
        super.onAttach(context);
        if (context instanceof OnFragmentInteractionListener) {
            mListener = (OnFragmentInteractionListener) context;
        } else {
            throw new RuntimeException(context.toString()
                    + " must implement OnFragmentInteractionListener");
        }
    }
 
    @Override
    public void onDetach() {
        super.onDetach();
        mListener = null;
    }
 
    /**
     * This interface must be implemented by activities that contain this
     * fragment to allow an interaction in this fragment to be communicated
     * to the activity and potentially other fragments contained in that
     * activity.
     * <p/>
     * See the Android Training lesson <a href=
     * "http://developer.android.com/training/basics/fragments/communicating.html"
     * >Communicating with Other Fragments</a> for more information.
     */
    public interface OnFragmentInteractionListener {
        // TODO: Update argument type and name
        void onFragmentInteraction(Uri uri);
    }
}
0
Pablito
2767 / 2198 / 744
Регистрация: 12.05.2014
Сообщений: 7,711
Завершенные тесты: 1
07.03.2016, 19:45 4
Цитата Сообщение от Vladislavij Посмотреть сообщение
при заполнении главного активити на него накладываются другие
это как?

по коду там вообще никакие фрагменты никуда не добавляются
0
Vladislavij
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 15
07.03.2016, 19:59  [ТС] 5
когда добавляю кнопки или текст в главный layout на других layout он отображается за контентом других layout'тов
0
07.03.2016, 19:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.03.2016, 19:59

Переход на нужный фрагмент по нажатию кнопки назад
Здравствуйте, у меня есть 2 фрагмента со списком ListFragment (выбираю...

Ошибка в открытии приложения на эмуляторе
package com.Yana.calc; import android.app.Activity; import...

Переход в Play Google из приложения
Во многих приложениях видел функции перехода из приложения в Play Google для...


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

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

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