material-components / material-components/material-components-android

[TabLayout] Margin for each tab item

Aperta
#1,507 6 commenti 5 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

feature request Widget: Tab
Lingua principale
Java
Stelle
17.4k
Fork
3.2k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Currenlty you can not change a Tab item from the TabLayout from the styles, you have to do some hacky thing like:

The issue is when you want to change the tab background shape into something like:
![image](https://user-images.githubusercontent.com/76348/88342475-15a6b980-cd05-11ea-8714-6b0583bdff30.png)

But since this is not possible from the styles it will appear like this since:
![image](https://user-images.githubusercontent.com/76348/88342494-1f302180-cd05-11ea-99b2-81a36edd9cf0.png)

# Possible Solution
One atribute `tab_margin_start` and each margin for each item maybe?

# Current hacky solution
Hacky programaticaly solution [source](https://spotandroid.com/2016/11/02/how-to-add-margins-between-tabs-in-tablayout/):

```kotlin
for(int i=0; i < mTabLayout.getTabCount(); i++) {
View tab = ((ViewGroup) mTabLayout.getChildAt(0)).getChildAt(i);
ViewGroup.MarginLayoutParams p = (ViewGroup.MarginLayoutParams) tab.getLayoutParams();
p.setMargins(0, 0, 50, 0);
tab.requestLayout();
}
```

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia leggendo l’implementazione di TabLayout e la gestione del layout dei suoi elementi delle schede. Confronta i margini richiesti per elemento con il comportamento attuale dello stile e con il workaround programmatico documentato. Il lavoro è completato quando i margini possono essere configurati tramite stili o attributi supportati senza quel workaround e il comportamento è stato verificato per più schede.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
android, java
Ambito
mobile
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.