2017-09-22 6 views
0

Nous avons ajouté un android.support.design.widget.CoordinatorLayout au fichier XML pour l'activité qui utilise une barre Snack. Toutes les informations de Gradle sont correctes et les deux autres importations correspondantes sont importées. MinSdk est 19 Support Design is v25.3.1 Ma question est la suivante: pourquoi cette importation a-t-elle eu lieu et ai-je omis certains réglages quelque part?Pourquoi cette importation statique <nom-projet> .R.id.snackbarView

Le fichier de code XML d'origine a une disposition relative ainsi que d'autres éléments et le XML pour le widget CoordinatorLayout

code

pour snackbar

public void showSnackbar(){ 

    //coordinatorLayout = findViewById(snackbarView); 

    //Snackbar snackbar = null; 
     final Snackbar snackbar = Snackbar 
       .make(findViewById(snackbarView), getText(R.string.snackbar_text),1); 
       snackbar.setActionTextColor(Color.RED); 
       snackbar.setAction("EXIT", new View.OnClickListener(){ 

      @Override 
      public void onClick(View view) { 
       //Intent intent = new Intent(DetailsActivity.this, MainActivity.class); 
       //startActivity(intent); 
       snackbar.dismiss(); 
      } 
     }); 

     TextView snackbarActionTextView = (TextView) snackbar.getView().findViewById(android.support.design.R.id.snackbar_action); 
     snackbarActionTextView.setTextSize(30); 
     snackbarActionTextView.setTypeface(snackbarActionTextView.getTypeface(), Typeface.BOLD); 

     TextView snackbarTextView = (TextView) snackbar.getView().findViewById(android.support.design.R.id.snackbar_text); 
     snackbarTextView.setTextSize(30); 
     snackbarTextView.setMaxLines(3); 
     snackbarTextView.setTextColor(Color.YELLOW); 
     snackbar.setDuration(Snackbar.LENGTH_INDEFINITE); 
     snackbar.show(); 

    } 

voici mon importation

import android.support.design.widget.Snackbar; 
    import android.support.v7.app.AppCompatActivity; 
+1

Veuillez indiquer votre question correctement –

+0

@PramodYadav Je pensais que le fait de poser la question était clair. S'il vous plaît expliquer comment mentionner la question d'une question correctement, donc je ne fais pas la même erreur deux fois –

Répondre

1

James_Duh ici est un code qui va créer un bouton simple Snackbar sans action et l'autre méthode crée un Snackbar avec le bouton d'action en profiter Pas sûr de l'importation?

public void onPLAIN(View view){ 

    noActLayout = (CoordinatorLayout)findViewById(R.id.USE_ME_TWICE); 

    sbNoAct = Snackbar.make(noActLayout,R.string.real_csb_noaction_text,1);// any interger will make it happy 
    sbNoAct.setDuration(4000);// 4 sec // OR Snackbar.LENGTH_LONG matters NOT you are setting duration here 

    View sbView = sbNoAct.getView(); 
    sbView.setBackgroundColor(ContextCompat.getColor(this, R.color.color_lightBlue)); 
    TextView textViewNoAct = sbView.findViewById(android.support.design.R.id.snackbar_text); 
    //set text color 
    textViewNoAct.setTextColor(ContextCompat.getColor(this,R.color.color_White)); 
    textViewNoAct.setMaxLines(10); 
    textViewNoAct.setTextSize(18); 
    //increase max lines of text in snackbar. default is 2. 
    sbNoAct.show(); 
} 

public void onWithAct(View view){ 

    myLayout = (CoordinatorLayout) findViewById(R.id.USE_ME_TWICE); 

    sb = Snackbar.make(myLayout, R.string.real_csb_text, Snackbar.LENGTH_INDEFINITE) 
      .setAction(R.string.real_csb_action, myOnClickListener) 
      .setActionTextColor(ContextCompat.getColor(context, R.color.color_Red)); 

    View sbView = sb.getView(); 
    sbView.setBackgroundColor(ContextCompat.getColor(this, R.color.color_White)); 
    TextView textView = sbView.findViewById(android.support.design.R.id.snackbar_text); 
    //set text color 
    textView.setTextColor(ContextCompat.getColor(this,R.color.color_deepBlue)); 
    textView.setTextSize(18); 
    //increase max lines of text in snackbar. default is 2. 
    textView.setMaxLines(10); 
    // NOTE new View 
    TextView textAction = sbView.findViewById(android.support.design.R.id.snackbar_action); 
    //set Action text color 
    textAction.setTextColor(ContextCompat.getColor(this,R.color.color_Red)); 
    textAction.setTextSize(18); 
    sb.show(); 
} 
    View.OnClickListener myOnClickListener = new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      //sb.dismiss(); 
      System.out.println("=== I WAS DISMISSED OR SENT TO MainActivity==="); 
      // OR use and Intent to go somewhere have a nice trip 
      Intent intent = new Intent(PageThreeActivity.this, MainActivity.class); 
      startActivity(intent); 
     } 
    }; 
}