Browse Source

GUI Layouting

master
gitsvn 12 years ago
parent
commit
62cc722ce4
2 changed files with 60 additions and 34 deletions
  1. 18
    13
      res/layout/rbs_main.xml
  2. 42
    21
      src/ch/spherIC/recurvebowsight/RBSMainActivity.java

+ 18
- 13
res/layout/rbs_main.xml View File

@@ -83,9 +83,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/views"
android:scrollbarAlwaysDrawVerticalTrack="false" >
<ScrollView
android:scrollbarAlwaysDrawVerticalTrack="false" ><ScrollView
android:id="@+id/paramsScrollView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -569,19 +567,26 @@
android:layout_height="match_parent"
android:orientation="vertical" >
<ch.spherIC.recurvebowsight.components.XTextView
android:id="@+id/flightCurveTxtFld"
<ScrollView
android:id="@+id/flightCurveScrollVIew"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="8dp"
android:background="@color/white"
android:ems="10"
android:inputType="textMultiLine"
android:padding="4dp"
android:textSize="14sp"
app:drawBorder="true"
app:drawBorderColor="@color/semi_translucent_black"
app:drawBorderWidth="2dp" />
android:scrollbars="vertical" >
<ch.spherIC.recurvebowsight.components.XTextView
android:id="@+id/flightCurveTxtFld"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:ems="10"
android:inputType="textMultiLine"
android:padding="4dp"
android:textSize="14sp"
app:drawBorder="true"
app:drawBorderColor="@color/semi_translucent_black"
app:drawBorderWidth="2dp" />
</ScrollView>
</LinearLayout>
<ScrollView

+ 42
- 21
src/ch/spherIC/recurvebowsight/RBSMainActivity.java View File

@@ -10,6 +10,10 @@ import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.text.SpannableString;
import android.text.style.TabStopSpan;
import android.view.Gravity;
import android.view.Menu;
import android.view.MenuItem;
@@ -75,6 +79,7 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi
private static final int MIN_DISTANCE = 50;
private static final double CENTI = 0.01;
private static final double MILLI = 0.001;
private static final String TAB = "\u0009";
private ViewFlipper viewFlipper;
private ScrollView paramsScrollView;
@@ -677,6 +682,11 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi
this.scSightSpinner.setSelectedSight(archerySetup.getSight());
this.scSightSpinner.fireSelectionChangedEvent();
this.scVertScaleMiddleTxtFld.setText(DF.format(archerySetup.getSightVertSkalaMiddle()));
this.airTemperatureTxtFld.setText("25");
this.airRelativeHumidityTxtFld.setText("50");
this.shootingDistanzTxtFld.setText("18");
} else {
this.arrowDiameterTxtFld.setText("");
this.arrowDiameterTxtFld.setText("");
@@ -732,7 +742,9 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi
if (allParamFieldsValid()) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
if (getCurrentFocus() != null) {
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
}
CalculationTask calcTask = new CalculationTask();
TrajectoryCalculator calculator = new TrajectoryCalculator(Double.valueOf(this.arrowDiameterTxtFld.getText().toString().trim()) * MILLI, //
@@ -740,8 +752,8 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi
Double.valueOf(this.arrowWeightTxtFld.getText().toString().trim()) * MILLI, //
Double.valueOf(this.arrowV0TxtFld.getText().toString().trim()), //
Double.valueOf(this.shootingDistanzTxtFld.getText().toString().trim()), //
Double.valueOf(this.arrowNockHeightTxtFld.getText().toString().trim())
- Double.valueOf(this.targetCenterHeightTxtFld.getText().toString().trim()), //
Double.valueOf(this.targetCenterHeightTxtFld.getText().toString().trim())
- Double.valueOf(this.arrowNockHeightTxtFld.getText().toString().trim()), //
Double.valueOf(this.airTemperatureTxtFld.getText().toString().trim()), //
Double.valueOf(this.airRelativeHumidityTxtFld.getText().toString().trim())
* CENTI, //
@@ -767,25 +779,34 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi
this.startAngle = startAngle;
this.flightCurveTxtFld.setText("");
this.flightCurveTxtFld.append("Abschusswinkel:\t" + DF_FC.format(startAngle) + " °\n");
this.flightCurveTxtFld.append("Max. Höhe der Flugbahn:\t" + DF_FC.format(maxHCurve[0])
this.flightCurveTxtFld.append("Abschusswinkel:" + TAB + DF_FC.format(startAngle) + " °\n");
this.flightCurveTxtFld.append("Max. Höhe der Flugbahn:" + TAB + DF_FC.format(maxHCurve[0])
+ " m / " + DF_FC.format(maxHCurve[0] + Double.valueOf(this.arrowNockHeightTxtFld.getText().toString().trim()))
+ " m, [t = " + DF_FC.format(maxHCurve[1]) + " sec]\n");
this.flightCurveTxtFld.append("Flugzeit:\t\t"
+ " m, [t = " + DF_FC.format(maxHCurve[1]) + " s]\n");
this.flightCurveTxtFld.append("Flugzeit:" + TAB + TAB
+ DF_FC.format(flightCurve[flightCurve.length - 1][TrajectoryCalculator.IDX_T])
+ " sec\n\n");
this.flightCurveTxtFld.append("t [sec]\tVx [m/s]\tVy [m/s]\tx [m]\ty [m]\n\n");
for (int i = 0; i < flightCurve.length; i++) {
Double[] r1 = flightCurve[i];
StringBuffer line = new StringBuffer();
line.append(DF_FC.format(r1[TrajectoryCalculator.IDX_T]) + "\t"
+ DF_FC.format(r1[TrajectoryCalculator.IDX_VX]) + "\t"
+ DF_FC.format(r1[TrajectoryCalculator.IDX_VY]) + "\t"
+ DF_FC.format(r1[TrajectoryCalculator.IDX_X]) + "\t"
+ DF_FC.format(r1[TrajectoryCalculator.IDX_Y]) + "\n");
this.flightCurveTxtFld.append(line.toString());
}
SpannableString line = new SpannableString("t [sec]\tVx [m/s]\tVy [m/s]\tx [m]\ty [m]\n\n");
line.setSpan(new TabStopSpan.Standard(100), 7, 9, 0);
line.setSpan(new TabStopSpan.Standard(200), 17, 19, 0);
line.setSpan(new TabStopSpan.Standard(300), 27, 29, 0);
line.setSpan(new TabStopSpan.Standard(400), 34, 36, 0);
this.flightCurveTxtFld.append(line);
// this.flightCurveTxtFld.append("t [sec]" + TAB + TAB + "Vx [m/s]" + TAB + TAB + "Vy [m/s]" + TAB + TAB + "x [m]" + TAB + TAB + "y [m]\n\n");
//
// for (int i = 0; i < flightCurve.length; i++) {
// Double[] r1 = flightCurve[i];
// StringBuffer line = new StringBuffer();
// line.append(DF_FC.format(r1[TrajectoryCalculator.IDX_T]) + TAB + TAB
// + DF_FC.format(r1[TrajectoryCalculator.IDX_VX]) + TAB + TAB + TAB
// + DF_FC.format(r1[TrajectoryCalculator.IDX_VY]) + TAB + TAB + TAB + TAB
// + DF_FC.format(r1[TrajectoryCalculator.IDX_X]) + TAB + TAB
// + DF_FC.format(r1[TrajectoryCalculator.IDX_Y]) + "\n");
// this.flightCurveTxtFld.append(line.toString());
// }
calculateSettings();
@@ -817,8 +838,8 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi
Double a = Double.valueOf(this.bowPulloutTxtFld.getText().toString()) * 10;
Double heVs = this.scHeVSSpinner.getVisibility() == View.VISIBLE ? Double.valueOf(this.scHeVSSpinner.getSelectedItem().toString()) : Double.valueOf(this.scHeVSTxtFld.getText().toString());
Double lhNA = this.selectedArcherySetup.getHNA() * 10;
Double dltH = (Double.valueOf(this.arrowNockHeightTxtFld.getText().toString())
- Double.valueOf(this.targetCenterHeightTxtFld.getText().toString())) * Math.pow(10, 3);
Double dltH = (Double.valueOf(this.targetCenterHeightTxtFld.getText().toString())
- Double.valueOf(this.arrowNockHeightTxtFld.getText().toString())) * Math.pow(10, 3);
Double ldistH = Double.valueOf(this.shootingDistanzTxtFld.getText().toString()) * Math.pow(10, 3);
Double minSkala = this.scVertScaleRngTxtFld.getText().toString().contains("-") ? Double.valueOf(this.scVertScaleRngTxtFld.getText().toString().substring(0,
this.scVertScaleRngTxtFld.getText().toString().indexOf('-'))) : 0d;

Loading…
Cancel
Save