【发布时间】:2016-10-28 01:28:06
【问题描述】:
我正在开发一个 Android 应用程序。在我的应用程序中,我使用带有自定义视图的小吃吧。我的自定义视图只有子视图。那是一个图像视图。显示带有小吃店的自定义视图是可以的。但问题在于快餐栏中 ImageView 的大小。我想将其设置为与父匹配。但是宽度和snackbar的宽度不匹配。
这是我为小吃店定制的视图布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:scaleType="centerCrop"
android:id="@+id/snackbar_ad_image"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
这就是我在活动中显示小吃店的方式
private void showSnackbarAd(View view,Ad ad)
{
final Snackbar snackbar = Snackbar.make(view,"",Snackbar.LENGTH_LONG);
Snackbar.SnackbarLayout layout = (Snackbar.SnackbarLayout)snackbar.getView();
TextView textView = (TextView) layout.findViewById(android.support.design.R.id.snackbar_text);
textView.setVisibility(View.INVISIBLE);
View snackView = getLayoutInflater().inflate(R.layout.snack_bar_ad,null);
ImageView imageView = (ImageView)snackView.findViewById(R.id.snackbar_ad_image);
Picasso.with(getBaseContext()).load(ad.getImageUrl()).into(imageView);
layout.addView(snackView, 0);
snackbar.show();
}
我想要的是我想要 ImageView 相同宽度宽度的小吃店。但是我的代码不起作用。
这就是我得到的。
如何使 ImageView 与 Snackbar 具有相同的宽度并适合小吃吧?
【问题讨论】:
-
您似乎想拉伸图像吧?当你这样做时,有些图像可能看起来很丑。
-
是的。我想伸展。没关系。合适的图片将从后端上传。因为它是为了广告。请问怎么弄啊?
-
不确定它是否有效,但尝试将 scaleType 设置为 fitXY 并设置固定高度,因为无论如何,snackbar 的高度应始终为 48 或 80dp。您可以在此处阅读有关 scaleTypes 的更多信息:developer.android.com/reference/android/widget/…
-
将
android:scaleType="fitXY"添加到xml中的ImageView -
我设置了 firXY。但只要给我同样的结果。
标签: android android-snackbar snackbar