Sajmon

TAMZ II - C2

Sep 24th, 2012
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.54 KB | None | 0 0
  1. /**
  2.  * Author: Sajmon
  3.  * TAMZ II: Beginner practise
  4.  */
  5.  
  6. package com.sajmon.tamzIIc2;
  7.  
  8. import android.app.Activity;
  9. import android.os.Bundle;
  10. import android.view.View;
  11. import android.widget.Button;
  12. import android.widget.EditText;
  13. import android.widget.TextView;
  14.  
  15. public class TAMZII_C2Activity extends Activity implements View.OnClickListener {
  16.  
  17.     protected static final int CALC_TO_CELSIUS = 1234;
  18.     protected static final int CALC_TO_FAHRENHEIT = 1235;
  19.    
  20.     protected EditText inputData;
  21.     protected Button btnCelsiusToFahren, btnFahrenToCelsius;
  22.     protected TextView resultText;
  23.    
  24.     @Override
  25.     public void onCreate(Bundle savedInstanceState) {
  26.         super.onCreate(savedInstanceState);
  27.         setContentView(R.layout.main);
  28.         inputData = (EditText) findViewById(R.id.temp);
  29.         btnCelsiusToFahren = (Button) findViewById(R.id.cTof);
  30.         btnFahrenToCelsius = (Button) findViewById(R.id.fToc);
  31.         resultText = (TextView) findViewById(R.id.resultText);
  32.         btnCelsiusToFahren.setOnClickListener(this);
  33.         btnFahrenToCelsius.setOnClickListener(this);
  34.        
  35.     }
  36.    
  37.     public void onClick(View view) {
  38.         switch (view.getId()) {
  39.             case R.id.cTof:
  40.                 resultText.setText(calculateTemperature(inputData.getText().toString(), CALC_TO_FAHRENHEIT));
  41.             break;
  42.             case R.id.fToc:
  43.                 resultText.setText(calculateTemperature(inputData.getText().toString(), CALC_TO_CELSIUS));
  44.             break;
  45.         }
  46.     }
  47.    
  48.     private String calculateTemperature(String data, int type) {
  49.         double inputTemp = Double.parseDouble(data);
  50.         double temp = 0;
  51.         switch (type) {
  52.             case CALC_TO_CELSIUS:
  53.                 temp = ((inputTemp - 32) * 5) / 9;
  54.             break;
  55.             case CALC_TO_FAHRENHEIT:
  56.                 temp = ((inputTemp * 9) / 5) + 32;
  57.             break;
  58.         }
  59.         return "Result is: " + String.valueOf(temp);
  60.     }    
  61. }
  62.  
  63. XML layout:
  64.  
  65. <?xml version="1.0" encoding="utf-8"?>
  66. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  67.     android:layout_width="fill_parent"
  68.     android:layout_height="fill_parent"
  69.     android:orientation="vertical"
  70.     android:padding="10dp">
  71.  
  72.     <EditText
  73.         android:id="@+id/temp"
  74.         android:layout_width="fill_parent"
  75.         android:layout_height="wrap_content"
  76.         android:inputType="numberDecimal"
  77.     />
  78.    
  79.     <LinearLayout
  80.         android:id="@+id/innerLayout"
  81.         android:layout_width="wrap_content"
  82.         android:layout_height="wrap_content"
  83.         android:layout_below="@id/temp"
  84.         android:layout_centerHorizontal="true"
  85.         >
  86.         <Button
  87.             android:id="@+id/cTof"
  88.             android:layout_width="wrap_content"
  89.             android:layout_height="wrap_content"
  90.             android:text="@string/btnCtoF"
  91.             />
  92.        
  93.         <Button
  94.             android:id="@+id/fToc"
  95.             android:layout_width="wrap_content"
  96.             android:layout_height="wrap_content"
  97.             android:text="@string/btnFtoC"
  98.             />
  99.     </LinearLayout>
  100.    
  101.     <TextView
  102.         android:id="@+id/resultText"
  103.         android:layout_width="fill_parent"
  104.         android:layout_height="wrap_content"
  105.         android:layout_below="@id/innerLayout"
  106.         android:gravity="center_horizontal"
  107.         />    
  108. </RelativeLayout>
  109.  
  110. String refs:
  111.  
  112. <?xml version="1.0" encoding="utf-8"?>
  113. <resources>
  114.  
  115.     <string name="hello">Hello World, TAMZII_C2Activity!</string>
  116.     <string name="app_name">TAMZII_C2</string>
  117.     <string name="btnCtoF">Celsius to F.</string>
  118.     <string name="btnFtoC">F. to Celsius</string>
  119.  
  120. </resources>
Advertisement
Add Comment
Please, Sign In to add comment