我们在使用Snackbar的Activity的XML文件中添加了android.support.design.widget.CoordinatorLayout
。所有Gradle信息都是正确的,另外两个相应的导入是导入的minSdk是19支持设计是v25.3.1我的问题是为什么这个导入发生并且我在某处省略了一些设置?
原始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;
答案 0 :(得分:1)
James_Duh这里有一些代码可以创建一个简单的Snackbar no Action按钮而另一个方法创建一个带有Action按钮的Snackbar享受不确定导入?
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);
}
};
}