我似乎无法将按钮和androidplot一起放到一个scrollview中,这样我就可以向下滚动,通过androidplot来查看按钮。我使用的是androidplot 0.9.8。
这是我的xml文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:ap="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="example.example.MainActivity">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/plotLayout">
<com.androidplot.xy.XYPlot
android:id="@+id/plot"
android:layout_width="match_parent"
android:layout_height="match_parent"
ap:Label="test"
ap:domainLabel="test"
ap:rangeLabel="test"
ap:renderMode="use_main_thread"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_below="@id/plot">
<Button
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="test"/>
<Button
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="test"/>
</LinearLayout>
</RelativeLayout>
</ScrollView>
编辑:但是,当我为androidplot指定一定高度时(例如android:layout_height =“600dp”而不是android:layout_height =“match_parent”),它滚动得很好。为什么使用match_parent会阻止它滚动?
答案 0 :(得分:1)
您似乎使用match_parent
的值作为地块的高度,这会在ScrollView
内部使用时创建鸡和蛋的情景,因为两个视图都取决于另一个告诉它它的大小是什么。
这里最好的做法是为布局xml中的绘图提供明确的高度。如果这不适合您,请添加:
android:fillViewport="true"
到你的scrollview的XML也可以做到这一点。 (通常有效但我在各种情况下都听到了相反的报道)This blog post更详细地介绍了基本问题。
答案 1 :(得分:0)
我设法通过以编程方式为绘图设置手动大小来破解它。您可以获取绘图的布局参数,然后手动更改高度。我认为高度似乎存在某种问题?
XYPlot plot = (XYPlot) findViewById(R.id.plot);
LayoutParams lp = plot.getLayoutParams();
lp.height = 1710; // You can set it to whatever height you require it to be, 1710 is just an example
plot.setLayoutParams(lp);