我正在编辑以使问题更简单,希望这有助于获得准确的答案.
说我有以下oval形状:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<solid android:angle="270"
android:color="#FFFF0000"/>
<stroke android:width="3dp"
android:color="#FFAA0055"/>
</shape>
Run Code Online (Sandbox Code Playgroud)
如何在活动类中以编程方式设置颜色?
我有
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid
android:color="#FFFF00" />
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
</shape>
<TextView
android:background="@drawable/test"
android:layout_height="45dp"
android:layout_width="100dp"
android:text="Moderate"
/>
Run Code Online (Sandbox Code Playgroud)
所以现在我希望这个形状根据我从Web服务调用中获取的信息来改变颜色.所以它可能是黄色或绿色或红色或其他任何取决于我从网络电话呼叫收到的颜色.
如何更改形状的颜色?根据这些信息?
我正在尝试将线性渐变应用于ListView.这是我的drawable xml的内容:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#3A3C39"
android:endColor="#181818"
android:angle="270"
/>
<corners android:radius="0dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)
所以我将它应用于我的ListView:
android:background="@drawable/shape_background_grey"
Run Code Online (Sandbox Code Playgroud)
它可以工作,但它在模拟器和真实设备上看起来非常"带状".
有没有办法减少这种"行为"?
我想知道Android中带有Shape类的矢量绘图可能与另一个矢量绘图标准相似.
由于Shape是a Drawable,而Drawable通常被定义为XML,它听起来很像SVG中的矢量绘图命令.
我的问题是:有没有人创建了一个XSLT转换或其他机制,用于将SVG绘图描述转换为Android Shapes?
我需要从应用程序中更改笔触颜色.用户可以更改背景颜色,因此我还需要让他们更改按钮的笔触(轮廓).由于它已经在drawable(下面的示例)中设置,我还没有找到改变它的方法.看起来像所有其他问题只是说使用XML文件......但这并不能让我变得动态.感谢您的任何帮助!
我需要将笔触颜色更改为用户定义的颜色.与国家无关.
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#ffffffff"/>
<stroke
android:width="3dp"
android:color="@color/Dim_Gray" /> <<<<--- This is what I need to change
<padding android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp"
/>
<corners android:bottomRightRadius="12dp" android:bottomLeftRadius="12dp"
android:topLeftRadius="12dp" android:topRightRadius="12dp"/>
</shape>
Run Code Online (Sandbox Code Playgroud) 我使用drawable作为TextView的背景,只是在文本下面有一个分隔线.用这个drawable-xml来解决它:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape
android:shape="rectangle">
<solid android:color="#FFDDDDDD" />
<gradient
android:angle="0"
android:startColor="#FFAAAAAA"
android:endColor="#FFEEEEEE"
/>
</shape>
</item>
<item android:bottom="2dp">
<shape
android:shape="rectangle">
<solid android:color="#FF000000" />
</shape>
</item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)
但是这种方法在黑色矩形上方绘制一个彩色矩形.我想只在形状底部的线条没有黑色矩形,因为黑色不透明.我怎么能实现这一目标?
如何通过Android形状drawable在Android中实现圆形,如下所示:

我试图找出PySpark中DataFrame的大小/形状.我没有看到一个可以做到这一点的功能.
在Python中,我可以做到
data.shape()
Run Code Online (Sandbox Code Playgroud)
PySpark中是否有类似的功能.这是我目前的解决方案,但我正在寻找一个元素
row_number = data.count()
column_number = len(data.dtypes)
Run Code Online (Sandbox Code Playgroud)
列数的计算并不理想......
是否可以在xml中绘制一个形状,并使用png作为该形状的背景?我已经有了形状(它是一个带圆角的正方形),我想把背景放到那个正方形上.
我试图以这种方式设置节点的大小:
controller[shape=circle,width=.5,label="Controller",style=filled,fillcolor="#8EC13A"];
Run Code Online (Sandbox Code Playgroud)
但是所有三个节点都有不同的大小.我该如何设置固定大小?