应用小部件布局:图像上方的文本行,边界框内的中心

时间:2018-04-16 10:54:48

标签: android android-layout android-widget

我有一个非常简单的app小部件布局:图像上方的一行文字。

图像应缩放以适合窗口小部件的边界框(保持纵横比),文本应与其下方的图像左对齐。它们应该一起出现在小部件边界框的中间。

我无法让它发挥作用。我管理的最好的是对齐边界框的左上角,如下所示:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical">
    <TextView
            android:id="@+id/text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
    />
    <ImageView
        android:id="@+id/image"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:layout_gravity="top"
        android:scaleType="fitStart"
    />
</LinearLayout>

我无法指定一个对齐顶部中心的scaleType,我也无法使图像视图占用图像所需的空间。

1 个答案:

答案 0 :(得分:1)

试试这个,Here is an image,如果您希望在横向模式下显示您的布局,则必须为横向模式制作另一种布局,或者以纵向模式保持视图。

; with cte as 
(
    select emp_id
    , rate_effective_date 
    , hourly_rate 
    , row_number() over (partition by emp_id order by rate_effective_date ) r 
    from myTable
)

select a.emp_id
, a.rate_effective_date 
, a.hourly_rate 
, dateadd(day, -1, b.rate_effective_date) rate_effective_end_date 
from cte a
left outer join cte b
on b.emp_id = a.emp_id
and b.r = a.r + 1