我对在Android中创建UI的这个问题感到震惊。我需要一个基于xml的解决方案来解决这个问题。我不想使用任何SVG或PNG图像来实现解决方案。有没有办法在android中实现这个视图。
答案 0 :(得分:0)
您应该使用xml的<layer-list>
元素来绘制这样的UI。
以下代码将用于创建椭圆形:
<shape android:shape="oval"
xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#AAAAAA"></solid>
<size android:height="100dp"
android:width="60dp">
</size>
这导致以下形状:
一旦你知道如何使用xml绘制椭圆形状。现在,下一步是学习如何使用<layer-list>
来实现所需的输出。要使用<layer-list>
学习,您可以按照this教程。
答案 1 :(得分:0)
通过创建一个新的可绘制文件来描述您想要绘制的小部件的外观,或多或少。然后您可以将其设置为要更改其原始外观的小部件的背景。如果你想达到你问题中显示的形状,我建议从矩形开始。 drawable文件看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid
android:color="#000"/>
<corners android:radius="150dp"/> <!-- The value here should specify How much ovally you want shape be -->
</shape>
然后将窗口小部件的背景分配给这个drawable应该可以做到这一点,如下所示:
<LinearLayout
android:background="@drawable/oval">
希望这有用:D