Define a callback interface in the Simulation list fragment which is called with the simulation id that is selected. Implement this interface in the OpenRocketViewer which then invokes the Intent for the SimulationViewer.
This commit is contained in:
parent
1d127a0162
commit
2fc45af6e0
@ -4,9 +4,11 @@ package net.sf.openrocket.android.rocket;
|
|||||||
import net.sf.openrocket.R;
|
import net.sf.openrocket.R;
|
||||||
import net.sf.openrocket.android.ActivityHelpers;
|
import net.sf.openrocket.android.ActivityHelpers;
|
||||||
import net.sf.openrocket.android.Application;
|
import net.sf.openrocket.android.Application;
|
||||||
|
import net.sf.openrocket.android.simulation.SimulationViewer;
|
||||||
import net.sf.openrocket.android.util.TabsAdapter;
|
import net.sf.openrocket.android.util.TabsAdapter;
|
||||||
import net.sf.openrocket.document.OpenRocketDocument;
|
import net.sf.openrocket.document.OpenRocketDocument;
|
||||||
import net.sf.openrocket.rocketcomponent.Configuration;
|
import net.sf.openrocket.rocketcomponent.Configuration;
|
||||||
|
import android.content.Intent;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.preference.PreferenceManager;
|
import android.preference.PreferenceManager;
|
||||||
@ -19,7 +21,8 @@ import android.view.MenuItem;
|
|||||||
import android.widget.TabHost;
|
import android.widget.TabHost;
|
||||||
|
|
||||||
public class OpenRocketViewer extends FragmentActivity
|
public class OpenRocketViewer extends FragmentActivity
|
||||||
implements SharedPreferences.OnSharedPreferenceChangeListener
|
implements SharedPreferences.OnSharedPreferenceChangeListener,
|
||||||
|
Simulations.OnSimulationSelectedListener
|
||||||
{
|
{
|
||||||
|
|
||||||
private static final String TAG = "OpenRocketViewer";
|
private static final String TAG = "OpenRocketViewer";
|
||||||
@ -113,4 +116,11 @@ implements SharedPreferences.OnSharedPreferenceChangeListener
|
|||||||
return super.onMenuItemSelected(featureId, item);
|
return super.onMenuItemSelected(featureId, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSimulationSelected(int simulationId) {
|
||||||
|
Intent i = new Intent(this, SimulationViewer.class);
|
||||||
|
i.putExtra("Simulation",simulationId);
|
||||||
|
startActivity(i);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,12 +2,11 @@ package net.sf.openrocket.android.rocket;
|
|||||||
|
|
||||||
import net.sf.openrocket.R;
|
import net.sf.openrocket.R;
|
||||||
import net.sf.openrocket.android.Application;
|
import net.sf.openrocket.android.Application;
|
||||||
import net.sf.openrocket.android.simulation.SimulationViewer;
|
|
||||||
import net.sf.openrocket.document.OpenRocketDocument;
|
import net.sf.openrocket.document.OpenRocketDocument;
|
||||||
import net.sf.openrocket.document.Simulation;
|
import net.sf.openrocket.document.Simulation;
|
||||||
import net.sf.openrocket.unit.Unit;
|
import net.sf.openrocket.unit.Unit;
|
||||||
import net.sf.openrocket.unit.UnitGroup;
|
import net.sf.openrocket.unit.UnitGroup;
|
||||||
import android.content.Intent;
|
import android.app.Activity;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.v4.app.Fragment;
|
import android.support.v4.app.Fragment;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
@ -22,7 +21,12 @@ import android.widget.TextView;
|
|||||||
|
|
||||||
public class Simulations extends Fragment {
|
public class Simulations extends Fragment {
|
||||||
|
|
||||||
|
public interface OnSimulationSelectedListener {
|
||||||
|
public void onSimulationSelected( int simulationId );
|
||||||
|
}
|
||||||
|
|
||||||
private ListView simulationList;
|
private ListView simulationList;
|
||||||
|
private OnSimulationSelectedListener listener;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
||||||
@ -33,6 +37,19 @@ public class Simulations extends Fragment {
|
|||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAttach(Activity activity) {
|
||||||
|
super.onAttach(activity);
|
||||||
|
if ( activity instanceof OnSimulationSelectedListener ) {
|
||||||
|
listener = (OnSimulationSelectedListener) activity;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void setListener(OnSimulationSelectedListener listener) {
|
||||||
|
this.listener = listener;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityCreated(Bundle savedInstanceState) {
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
@ -64,9 +81,9 @@ public class Simulations extends Fragment {
|
|||||||
simulationList.setOnItemClickListener( new OnItemClickListener() {
|
simulationList.setOnItemClickListener( new OnItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onItemClick(AdapterView l, View v, int position, long id) {
|
public void onItemClick(AdapterView l, View v, int position, long id) {
|
||||||
Intent i = new Intent(getActivity(), SimulationViewer.class);
|
if (listener != null ) {
|
||||||
i.putExtra("Simulation",(int)id);
|
listener.onSimulationSelected(position);
|
||||||
startActivity(i);
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user