0

マイクからデータを記録し、リアルタイムのピッチ検出を行い、ピッチ値をグラフとしてプロットする Android アプリケーションを開発しています。ここまでで、リアルタイムでのピッチ検出を完了しました。ここで、値を動的にグラフとしてプロットしたいと考えています。したがって、アプリケーションの画面には 2 つのフラグメントが必要です。1 つには [記録] ボタンと [停止] ボタンがあり、もう一方のフラグメントにグラフを表示したいと考えています。AChartEngine を使用してグラフをリアルタイムでプロットする方法は既に理解しています。また、フラグメントの使用の基本も理解しました。だから私の質問は、これらすべてをどのように接続するのですか? つまり、ピッチ検出アクティビティを実行し、[記録] ボタンをクリックするとグラフを動的に表示し、[停止] ボタンをクリックするとすべてを停止したいと考えています。あるフラグメントのボタンをクリックすると、別のフラグメントにグラフをプロットすることを示すコード例はありますか? ありがとう!

4

2 に答える 2

0

これは私の考えです。あなたができることは、両方のフラグメントを設定し、フラグメントにデータを表示して提供するために使用されるいくつかのメソッドを作成することです(fragment.setArgs()必要に応じて十分でない場合)

SecondFragmentストップを押したときに呼び出すようなメソッドがあり、バックスタックから 2 番目のフラグメントを取得するとします。

public void showRecordedData(SomeDataModel data){
     this.mFragmentData = data;
     ///show the  data on the chart view of the second fragment
}

SecondFragmentが null で表示されていないことを確認してください。

これが理にかなっていることを願っています。

于 2013-03-07T14:55:11.983 に答える
0

ScrollView を次のように使用します。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/ScrollViewChartContainer" android:layout_width="fill_parent" android:layout_height="fill_parent">
    <LinearLayout android:id="@+id/main" android:layout_width="fill_parent" android:layout_height="match_parent">
       <LinearLayout android:id="@+id/chart1" android:layout_width="fill_parent" android:layout_height="match_parent" android:background="@android:color/transparent" android:orientation="horizontal" /> 
       <LinearLayout android:id="@+id/chart2" android:layout_width="fill_parent" android:layout_height="match_parent" android:background="@android:color/transparent" android:orientation="horizontal" /> 
    </LinearLayout>
</ScrollView>

私はそのようなレイアウトをテストしていませんが、うまくいくはずです。

于 2013-03-12T08:00:13.270 に答える