소스 검색

GUI Layouting

master
gitsvn 12 년 전
부모
커밋
9b7cedc4b4

+ 16
- 0
res/layout/rbs_choose_archerysetup_dlg.xml 파일 보기

@@ -0,0 +1,16 @@
<RelativeLayout xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/chooseConfiguration"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center" >
<ListView
android:id="@+id/chooseArcerySetupListView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg" >
</ListView>
</RelativeLayout>

+ 3
- 1
res/values-de/strings.xml 파일 보기

@@ -49,6 +49,8 @@
<string name="menuAddEquipment">Ausrüstung hinzufügen</string>
<string name="menuDoCalculation">Berechnen</string>
<string name="menuMoreItems">Mehr&#8230;</string>
<!-- -->
<string name="caption_Ok">OK</string>
<string name="caption_Cancel">Abbrechen</string>

</resources>

+ 4
- 0
res/values/strings.xml 파일 보기

@@ -50,5 +50,9 @@
<string name="menuAddEquipment">Add Equipment</string>
<string name="menuDoCalculation">Calculate</string>
<string name="menuMoreItems">More&#8230;</string>
<!-- -->
<string name="caption_Ok">OK</string>
<string name="caption_Cancel">Cancel</string>
</resources>

+ 91
- 0
src/ch/spherIC/recurvebowsight/DialogFactory.java 파일 보기

@@ -0,0 +1,91 @@
/*
* $URL$
* $Revision$
* $LastChangedBy$
* $LastChangedDate$
*
* Copyright (c) 2005 syseca AG, Switzerland
* All rights reserved.
*
* This software is the confidential and proprietary information
* of syseca AG. ("Confidential Information"). You shall not
* disclose such Confidential Information and shall use it only
* in accordance with the terms of the license agreement you
* entered into with syseca AG.
*/
package ch.spherIC.recurvebowsight;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import ch.spherIC.recurvebowsight.components.FontArrayAdapter;
/**
* Dialog factory class.
*/
public final class DialogFactory {
/**
* Static main method to initialize classes
*
* @param dlgCode Code of dialog to instantiate. See {@link EasyBracketMain}
* @param parent Parent {@link Activity}
*
* @return Instantiated dialog.
*/
public static Dialog createDialog(int dlgCode, Activity parent) {
Dialog dlg;
switch (dlgCode) {
case RBSMainActivity.DLG_CHOOSE_ARCHERYSETUP:
dlg = createChooseArcherySetupDialog(parent);
break;
default:
dlg = null;
break;
}
return dlg;
}
private static Dialog createChooseArcherySetupDialog(Activity parent) {
AlertDialog.Builder builder = new AlertDialog.Builder(parent);
builder.setTitle(R.string.menuChooseEquipment);
builder.setView(parent.getLayoutInflater().inflate(R.layout.rbs_choose_archerysetup_dlg, null));
builder.setAdapter(new FontArrayAdapter<String>(parent, R.layout.rbs_spinner,
parent.getResources().getStringArray(R.array.CalculationTimeIntervals),
null), new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) { }
});
builder.setPositiveButton(R.string.caption_Ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
builder.setNegativeButton(R.string.caption_Cancel, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
// Create the AlertDialog object and return it
return builder.create();
}
}

+ 65
- 38
src/ch/spherIC/recurvebowsight/RBSMainActivity.java 파일 보기

@@ -1,6 +1,7 @@
package ch.spherIC.recurvebowsight;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
@@ -32,6 +33,11 @@ import java.util.Arrays;
public class RBSMainActivity extends Activity {
public static final int DLG_CHOOSE_ARCHERYSETUP = 0;
public static final int DLG_USERGUIDE_PARAMS = 1;
public static final int DLG_USERGUIDE_SIGHT = 2;
public static final int DLG_ABOUT = 3;
private static final int MIN_DISTANCE = 50;
private ViewFlipper viewFlipper;
@@ -67,6 +73,44 @@ public class RBSMainActivity extends Activity {
this.calcTimeIntervalCboBox = (Spinner) findViewById(R.id.deltaTimeCboBox);
this.calcAccuracyCboBox = (XSpinner) findViewById(R.id.calcPrecisionCboBox);
addTouchListeners();
xTextViewUp(this.txtViewParams);
this.calcTimeIntervalCboBox.setAdapter(new FontArrayAdapter<String>(this, R.layout.rbs_spinner,
getResources().getStringArray(R.array.CalculationTimeIntervals),
this.calcTimeIntervalCboBox));
this.calcAccuracyCboBox.setAdapter(new FontArrayAdapter<String>(this, R.layout.rbs_spinner,
getResources().getStringArray(R.array.CalculationAccuracies),
this.calcAccuracyCboBox));
// ************************************************************************
// ** TEST WEISE AB HIER***************************************************
// ************************************************************************
this.listView1 = (ListView) findViewById(R.id.listView1);
String[] values = new String[] { "Riser", "Sight", "General Config" };
final ArrayList<String> list = new ArrayList<String>(Arrays.asList(values));
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);
this.listView1.setAdapter(adapter);
this.listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(final AdapterView<?> parent, final View view, final int position,
final long id) {
final String item = (String) parent.getItemAtPosition(position);
if (item.equals("Riser")) {
Intent intent = new Intent(RBSMainActivity.this, RiserSightConfigurationActivity.class);
startActivity(intent);
}
}
});
}
private void addTouchListeners() {
// Scrollview muss den Swipe selbst handeln
this.paramsScrollView.setOnTouchListener(new OnTouchListener() {
@@ -206,42 +250,9 @@ public class RBSMainActivity extends Activity {
this.txtViewParams.setOnTouchListener(tabListener);
this.txtViewResults.setOnTouchListener(tabListener);
this.txtViewSight.setOnTouchListener(tabListener);
xTextViewUp(this.txtViewParams);
this.calcTimeIntervalCboBox.setAdapter(new FontArrayAdapter<String>(this, R.layout.rbs_spinner,
getResources().getStringArray(R.array.CalculationTimeIntervals),
this.calcTimeIntervalCboBox));
this.calcAccuracyCboBox.setAdapter(new FontArrayAdapter<String>(this, R.layout.rbs_spinner,
getResources().getStringArray(R.array.CalculationAccuracies),
this.calcAccuracyCboBox));
// ************************************************************************
// ** TEST WEISE AB HIER***************************************************
// ************************************************************************
this.listView1 = (ListView) findViewById(R.id.listView1);
String[] values = new String[] { "Riser", "Sight", "General Config" };
final ArrayList<String> list = new ArrayList<String>(Arrays.asList(values));
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);
this.listView1.setAdapter(adapter);
this.listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(final AdapterView<?> parent, final View view, final int position,
final long id) {
final String item = (String) parent.getItemAtPosition(position);
if (item.equals("Riser")) {
Intent intent = new Intent(RBSMainActivity.this, RiserSightConfigurationActivity.class);
startActivity(intent);
}
}
});
}
@Override
public boolean onPrepareOptionsMenu(final Menu menu) {
@@ -263,7 +274,15 @@ public class RBSMainActivity extends Activity {
@Override
public boolean onOptionsItemSelected(final MenuItem item) {
if (item.getItemId() == R.id.moreItems) {
// Handle item selection
switch (item.getItemId()) {
case R.id.chooseConfiguration:
showDialog(DLG_CHOOSE_ARCHERYSETUP);
return true;
case R.id.moreItems:
this.showInfoMenu = true;
closeOptionsMenu();
@@ -273,9 +292,14 @@ public class RBSMainActivity extends Activity {
openOptionsMenu();
}
});
}
return true;
return true;
default:
return super.onOptionsItemSelected(item);
}
}
@@ -363,5 +387,8 @@ public class RBSMainActivity extends Activity {
}
@Override
protected Dialog onCreateDialog(int id) {
return DialogFactory.createDialog(id, this);
}
}

Loading…
취소
저장