gpt4 book ai didi

android - 使用 XML 样式设置 AndroidPlot XYPlot 的样式

转载 作者:行者123 更新时间:2023-11-30 02:54:49 25 4
gpt4 key购买 nike

我正在寻找一种将 Style 应用于 AndroidPlot 元素的方法,但文档非常稀缺。基本上,我想将图形设计元素外部化到我的 styles.xml 文件中,但我不确定如何执行此操作。我试过向 Attrs.xml 添加一个元素但无济于事。

我的activity_main.xml布局文件:

<com.androidplot.xy.XYPlot
android:id="@+id/main_xyplot_main"
style="@style/GraphStyle"

androidPlot.domainLabel="@string/graph_x_axis"
androidPlot.titleWidget.labelPaint.textSize="@dimen/title_font_size"
androidPlot.domainLabelWidget.labelPaint.textSize="@dimen/domain_label_font_size"
androidPlot.rangeLabelWidget.labelPaint.textSize="@dimen/range_label_font_size"
androidPlot.rangeLabel="@string/graph_y_axis"
androidPlot.title="@string/graph_title"
androidPlot.renderMode="use_background_thread"

androidPlot.graphWidget.rangeLabelPaint.textSize="@dimen/range_tick_label_font_size"
androidPlot.graphWidget.rangeOriginLabelPaint.textSize="@dimen/range_tick_label_font_size"
androidPlot.graphWidget.domainLabelPaint.textSize="@dimen/domain_tick_label_font_size"
androidPlot.graphWidget.domainOriginLabelPaint.textSize="@dimen/domain_tick_label_font_size"

androidPlot.graphWidget.gridLinePaint.color="#000000"
androidPlot.graphWidget.marginBottom="25dp"
androidPlot.graphWidget.marginLeft="20dp"
androidPlot.graphWidget.marginRight="10dp"
androidPlot.graphWidget.marginTop="20dp"

androidPlot.legendWidget.heightMetric.value="25dp"
androidPlot.legendWidget.iconSizeMetrics.heightMetric.value="15dp"
androidPlot.legendWidget.iconSizeMetrics.widthMetric.value="15dp"
androidPlot.legendWidget.positionMetrics.anchor="right_bottom"
androidPlot.legendWidget.textPaint.textSize="10dp"

android:layout_above="@id/main_percentage"
android:gravity="top"

android:visibility="invisible" />

样式.xml

 <style name="GraphStyle">

<item name="android:paddingBottom">0dp</item>
<item name="android:paddingLeft">0dp</item>
<item name="android:paddingRight">0dp</item>
<item name="android:paddingTop">0dp</item>
<item name="android:layout_width">"wrap_content"</item>
<item name="android:layout_height">"wrap_content"</item>

</style>

有没有办法做到这一点?我想将所有这些 androidPlot.* 放入 GraphStyle。

谢谢!

最佳答案

不幸的是,目前这是不可能的。 Androidplot 被打包为一个 Jar 并且(据我所知)不可能包含在一个 jar 中使用的样式定义。这意味着您将无法覆盖 Plot 的 Androidplot 特定字段(以“androidPlot”开头的字段),但仍然可以覆盖来自 View 基类的字段(以“android”开头的字段)。

展望 future ,我们正在考虑使用 .aar 而不是 .jar 作为打包格式。除此之外,这应该让我们在 Artifact 中包含样式化定义,从而摆脱上述限制。 Here's a link到有关该主题的主题。

更新:从 0.6.2(当前开发版本)开始,Androidplot 可作为 .aar 文件使用,具有有限的样式支持,但是随着 0.6.2 的成熟,越来越多的属性被添加。参见 this thread了解详情。

关于android - 使用 XML 样式设置 AndroidPlot XYPlot 的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23459894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com