代码之家  ›  专栏  ›  技术社区  ›  James_Duh

为什么要导入静态<项目名称>。R、 id.snackbarView

  •  0
  • James_Duh  · 技术社区  · 7 年前

    android.support.design.widget.CoordinatorLayout

    原始XML代码文件有一个相对布局加上其他项和用于CoordinatorLayout小部件的XML

        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();
    
        }
    

    这是我的进口

      import android.support.design.widget.Snackbar;
      import android.support.v7.app.AppCompatActivity;
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Vector    7 年前

        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);
            }
        };
    }