Рисование верхней границы на форме на Android

Я создаю пользовательский индикатор выполнения (расположенный под a WebView) и то, что я хотел бы потянуть, является 1dp-широкой строкой между WebView и ProgressBar. Я изменяю существующий drawable, а именно, progress_horizontal.xml, и попробованный что-то вроде этого:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

  (...)

  <item>
    <shape android:shape="line">
      <stroke android:width="1dp" android:color="#FF000000" />
    </shape>
  </item>

</layer-list>

Эта строка однако вертикально центрируется, но я хочу, чтобы она была оттянута сверху drawable. Единственная идея, которую я мог придумать, состоит в том, чтобы использовать этот "hacky" градиент ниже:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

  (...)

  <item>
    <shape>
      <gradient
          android:startColor="#FF000000"
          android:centerColor="#00000000"
          android:centerY="0.01"
          android:endColor="#00000000"
          android:angle="270"
      />
    </shape>
  </item>

</layer-list>

У Вас есть лучшие идеи, как потянуть однострочную форму, выровненную к вершине drawable, определенного с layer-list?

17
задан Marek Stój 8 February 2010 в 20:30
поделиться