我正在使用AndroidPlot在我的Android应用程序中的图形上显示动态数据。图形显示在片段中,片段是选项卡式屏幕(视图寻呼机)的一部分。图表需要以横向和纵向模式显示。
当在纵向模式下显示图形时,我可以正确地看到它。但是,当手机变为横向模式时,图形会完全消失。只有在片段中使用AndroidPlot图时才会发生这种情况。当直接在没有片段的活动中使用AndroidPlot图形时,图形将以横向和纵向模式正确显示。
有没有人经历过这个?感谢您解决此问题的任何帮助。
我的layout.xml文件如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" tools:context="com.monitrahealth.mhsmartmct.TestFragment" android:id="@+id/fragment_test">
<com.androidplot.xy.XYPlot
android:id="@+id/mplot"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="4"
androidplot.renderMode="use_background_thread"
androidPlot.titleWidget.labelPaint.textSize="@dimen/title_font_size"
androidPlot.domainLabelWidget.visible="false"
androidPlot.domainLabelWidget.labelPaint.textSize="@dimen/domain_label_font_size"
androidPlot.rangeLabelWidget.visible="false"
androidPlot.rangeLabelWidget.labelPaint.textSize="@dimen/range_label_font_size"
androidPlot.graphWidget.marginTop="0dp"
androidPlot.graphWidget.marginLeft="0dp"
androidPlot.graphWidget.marginBottom="0dp"
androidPlot.graphWidget.marginRight="0dp"
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"
/>
我的片段代码如下:
public class TestFragment extends android.support.v4.app.Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View ecgGraphView = inflater.inflate(R.layout.fragment_ecggraph, container, false);
XYPlot dynamicPlot = (XYPlot) ecgGraphView.findViewById(R.id.dynamicXYPlot);
return ecgGraphView;
}
public void onPause() {
super.onPause();
}
public void onDestroy(){
super.onDestroy();
}
@Override
public void onResume() {
super.onResume();
}}