首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用XML样式设计AndroidPlot XYPlot的样式

用XML样式设计AndroidPlot XYPlot的样式
EN

Stack Overflow用户
提问于 2014-05-04 18:21:15
回答 1查看 2K关注 0票数 1

我正在寻找一种将样式应用于AndroidPlot元素的方法,而且文档非常缺乏。基本上,我想将图形设计元素具体化到我的styles.xml文件中,但是我不知道如何做到这一点。我尝试过在Attrs.xml中添加一个元素,但没有结果。

我的activity_main.xml布局文件:

代码语言:javascript
复制
<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" />

Styles.xml

代码语言:javascript
复制
 <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>

有办法这样做吗?我想把所有的雄激素put .*放进GraphStyle。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-08 16:11:25

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

展望未来,我们正在考虑使用.aar而不是.jar作为打包格式。除其他外,这应该允许我们在工件中包含可样式的定义,从而消除上述限制。这里有一个链接到该主题的线程。

更新:从0.6.2 (当前的开发版本)起,Androidplot就可以作为一个.aar,提供有限的样式支持,但是随着0.6.2的成熟,越来越多的属性被添加进来。详情请参见这条线

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23459894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档