我需要创建无边框按钮。设置public void loadImage(View view)
{
loadedImage = (ImageView)findViewById(R.id.upload_image1);
Drawable drawable = loadedImage.getDrawable();
if(drawable.getConstantState().equals(getResources().getDrawable(R.drawable.camera_icon).getConstantState())) {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "SelectPicture"), SELECT_PICTURE);
}
else
{
Intent i = new Intent(this, ShowImage.class);
i.putExtra("uri",selectedImageURI.toString());
startActivity(i);
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == SELECT_PICTURE) {
selectedImageURI = data.getData();
loadedImage = (ImageView)findViewById(R.id.upload_image1);
loadedImage.setScaleType(ImageView.ScaleType.CENTER_CROP);
Glide.with(this).load(selectedImageURI)
.into((ImageView) findViewById(R.id.upload_image1));
}
}
}
的最简单的xml方法。我尝试使用Widget.AppCompat.Button.Borderless
Anko
但没有效果。我做错了什么?
答案 0 :(得分:0)
尝试使用第三个构造函数参数,该参数接受attr
资源:
addView(Button(activity, null, R.attr.borderlessButtonStyle))
此外,您可以将其声明为DSL组件:
fun ViewManager.borderlessButton(textRes: Int = 0) =
borderlessButton(textRes) { }
fun ViewManager.borderlessButton(textRes: Int = 0, init: Button.()->Unit) =
ankoView({ Button(it, null, R.attr.borderlessButtonStyle) }, 0) {
if (textRes != 0) setText(textRes)
init()
}
然后,您的呼叫网站可能如下所示:
borderlessButton(android.R.string.ok)
您可以查看以类似方式声明的Anko的horizontalProgressBar
方法和HORIZONTAL_PROGRESS_BAR_FACRTORY
。
答案 1 :(得分:-1)
订单错了。试试这个:
button("Your text", android.support.design.R.style.Base_Widget_AppCompat_Button_Borderless_Colored) {
//your params
}
这适合我。