[JAVA] [Android / Kotlin] Notes détaillées 2

Afficher un fragment de dialogue en appuyant sur un bouton

Remarque: définir getSupportFragmentManager () sur getFragmentManager () entraînera une erreur.

HogeActivity.java


Button button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //Afficher une boîte de dialogue
                DialogFragment dialog = new DialogFragment();
                //Afficher getSupportFragmentManager()Est fixe, l'échantillon est une étiquette d'identification
                dialog.show(getSupportFragmentManager(), "sample");
            }
        });

S'il faut déclencher une boîte de dialogue d'alerte ou un fragment de boîte de dialogue

Appliquer R.string ou R.color à quelque chose qui n'est pas une vue

strings.xml


<resources>
<string name="error_message">Veuillez saisir moins de 20 caractères.</string>
</resources>

MainActivity.java


public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final Resources res = getResources();

        TextView textVIew = findViewById(R.id.text);
        textVIew.setText(res.getString(R.string.error_message));

       }
    }

Spécifiez le nombre de colonnes dans GridView

--Si numColumns = "10" n'est pas spécifié, une seule colonne sera affichée. ――10 signifie 10 colonnes.

hoge.xml


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
<GridView
    android:id="@+id/grid_view"
    android:layout_width="300dp"
    android:layout_height="242dp"
    android:layout_gravity="center_vertical"
    android:numColumns="10"></GridView>
</LinearLayout>

0 classes de test trouvées dans paclage Cause of'layout'error

--Une erreur qui se produit lorsque vous exécutez dans un endroit étrange tel que drawable ou xml.

getView n'est appelé que 3 fois même si le nombre d'éléments est 9 dans getCount

--Une erreur qui s'est produite lors de l'utilisation de Adapter pour placer des éléments dans GridView. --GetView n'a été appelé que 3 fois car il n'y avait que 3 éléments dans la zone GridView.

Qu'est-ce que setTag / getTag de l'adaptateur?

Adapter.java


   /**
     *Voir la méthode de dessin
     */
    override fun getView(p0: Int, p1: View?, p2: ViewGroup?): View {
        val itemLayoutView = p1 ?: View.inflate(this.context, R.layout.item_custom_view, null)
        var viewHolder = itemLayoutView.tag
        if (viewHolder == null) {
            viewHolder = ViewHolder()
            viewHolder.customView = itemLayoutView.custom_view as CustomView
            (itemLayoutView.custom_view as CustomView).initView(
                this.values[p0].index()
            )
            itemLayoutView.tag = viewHolder
        }
        return itemLayoutView
    }

/**
 *Classe de spectateur
 */
class ViewHolder {
    lateinit var customView: CustomView
}

Quelle est la différence entre [:] et [=] à Kotlin?

(Exemple)

main.java


//java
int number = 3;
//kotlin
var number = 3

(Exemple)

main.java


//java
int number;
number = 3;
//kotlin
lateinit var number:Int
number = 3

À propos? (Opérateur Elvis)

-? N'est fondamentalement pas utilisé. C'est gênant car il y a plus de succursales. -? Signifie autoriser null. --Il peut être jugé si la valeur de retour de la méthode est nullOK.

Recommended Posts

[Android / Kotlin] Notes détaillées 2
[Android] Notes détaillées
[Android / Kotlin] Résumé de l'interface utilisateur
[Android] Notes sur xml
[Kotlin / Android] Réécriture de l'auditeur
Remarques sur le studio Android
Notes pour les débutants en développement d'applications Android
Remarques sur l'appel du programme d'installation sur l'application Android
Remarques sur le traitement des threads Android (java)
[Android] Convertir le code Java Android en Kotlin
[Kotlin / Android] Créer une vue personnalisée
Remarques sur la création d'un plug-in Android pour Unity