Bonjour,
Je suis débutant et là je suis complétement perdu. Pour un projet je dois insérer des boutons à l'intérieur d'un onglet.
Je ne comprends pas comment mettre le code dans la classe du fragment.
Je l'ai mis dans la classe mainActivity:
Et voici le code du fragment :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public class MainActivity extends AppCompatActivity implements OnClickListener{ //private Activity mClass; Button b1; EditText ip_edittext ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SectionsPagerAdapter sectionsPagerAdapter = new SectionsPagerAdapter(this, getSupportFragmentManager()); ViewPager viewPager = findViewById(R.id.view_pager); viewPager.setAdapter(sectionsPagerAdapter); TabLayout tabs = findViewById(R.id.tabs); tabs.setupWithViewPager(viewPager); FloatingActionButton fab = findViewById(R.id.fab); FloatingActionButton fab2 = findViewById(R.id.fab2); setContentView(R.layout.fragment_settings); // à partir d'ici b1 = ((Button) this.findViewById(R.id.button1)); ip_edittext=((EditText)this.findViewById(R.id.editText1)) ; b1.setOnClickListener((OnClickListener) this); } public void onClick(View v) { if(v==b1){ String ip_adress=ip_edittext.getText().toString() ; Intent i = new Intent(MainActivity.this, MjpegSample.class); i.putExtra("ip",ip_adress) ; startActivity(i); } } }
avec ça le bouton est fonctionnel mais ça m'affiche l'onglet en plein écran
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public class SettingsFragment extends Fragment { public static SettingsFragment newInstance() { return (new SettingsFragment()); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_settings, container, false); } }
quand je commente ces 2 lignes :
L'affichage est correct les boutons vont bien dans l'onglet mais quand je clic dessus il ne se passe rien (logique).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 //setContentView(R.layout.fragment_settings); b1 = ((Button) this.findViewById(R.id.button1)); ip_edittext=((EditText)this.findViewById(R.id.editText1)) ; //b1.setOnClickListener((OnClickListener) this);
J'ai essayé de mettre ce dernier code dans la classe du fragment en question mais il n'est pas content avec setContentView et findViewById.
Merci
Partager