SLIP 19 Q1-Q2
Q1-design an android portrait and landscape screen layout
Activity.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import static java.lang.Math.pow;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void HandleClick(View arg0) {
double inputRate = 0.0;
double convertedRate = 0.0;
EditText inputText = (EditText)findViewById(R.id.editRate);
TextView convertedText = (TextView)findViewById(R.id.textResult);
try {
inputRate = Double.parseDouble(inputText.getText().toString())/100.0;
} catch (Exception ex) {
inputText.setText("0.0");
}
if(((RadioButton)(findViewById(R.id.radioMonthly))).isChecked()) {
//If converting to monthly
convertedRate = (pow((1.0 + inputRate),(1.0/12.0)) - 1.0)*100.0;
} else {
//Converting to yearly
convertedRate = (pow((1.0 + inputRate), 12) - 1.0) * 100.0;
}
convertedText.setText(String.format("Converted Rate is %1$.4f%%", convertedRate));
}
}
.xml
<?xml version="1.0" encoding="UTF-8"?>
-<ScrollView android:layout_height="match_parent" android:layout_width="match_parent" android:id="@+id/activity_main" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android">
-<RelativeLayout android:layout_height="match_parent" android:layout_width="match_parent">
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textTitle" android:layout_centerHorizontal="true" android:textStyle="normal|bold" android:textSize="20sp" android:text="Convert Interest Rates"/>
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textView" android:textSize="18sp" android:text="Rate to Convert %" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_alignBottom="@+id/editRate" android:layout_alignBaseline="@+id/editRate"/>
-<RadioGroup android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/radioGroup" android:layout_below="@+id/editRate">
<RadioButton android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/radioMonthly" android:textSize="18sp" android:text="Yearly to Monthly" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_weight="1" android:checked="true"/>
<RadioButton android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/radioYearly" android:textSize="18sp" android:text="Monthly to Yearly" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_below="@+id/radioMonthly" android:layout_weight="1" android:layout_marginTop="14dp"/>
</RadioGroup>
<Button android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/button" android:text="Convert" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_below="@+id/radioGroup" android:layout_marginTop="16dp" android:onClick="HandleClick"/>
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textResult" android:textSize="18sp" android:text="Press Convert for % Result" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_below="@+id/button" android:layout_weight="1" android:layout_marginTop="21dp"/>
<EditText android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/editRate" android:text="0.0" android:layout_below="@+id/textTitle" android:layout_toEndOf="@+id/radioGroup" android:layout_toRightOf="@+id/radioGroup" android:width="100dp" android:inputType="numberDecimal"/>
</RelativeLayout>
</ScrollView>
****************************************************************************************
Q2-----------------------------------------------------------------------------------
activity.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:text="Convert Interest Rates"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textTitle"
android:textSize="20sp"
android:textStyle="normal|bold"
android:layout_centerHorizontal="true" />
<TextView
android:text="Rate to Convert %"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView"
android:textSize="18sp"
android:layout_alignBaseline="@+id/editRate"
android:layout_alignBottom="@+id/editRate"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioGroup"
android:layout_below="@+id/editRate" >
<RadioButton
android:text="Yearly to Monthly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioMonthly"
android:textSize="18sp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:checked="true"
android:layout_weight="1" />
<RadioButton
android:text="Monthly to Yearly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioYearly"
android:textSize="18sp"
android:layout_below="@+id/radioMonthly"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="14dp"
android:layout_weight="1" />
</RadioGroup>
<Button
android:text="Convert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button"
android:layout_below="@+id/radioGroup"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="16dp"
android:onClick="HandleClick" />
<TextView
android:text="Press Convert for % Result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textResult"
android:textSize="18sp"
android:layout_below="@+id/button"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="21dp"
android:layout_weight="1" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:id="@+id/editRate"
android:width="100dp"
android:text="0.0"
android:layout_below="@+id/textTitle"
android:layout_toRightOf="@+id/radioGroup"
android:layout_toEndOf="@+id/radioGroup" />
</RelativeLayout>
activity.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import static java.lang.Math.pow;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//For Button presses (linked via onClick attribute)
public void HandleClick(View arg0) {
double inputRate = 0.0;
double convertedRate = 0.0;
EditText inputText = (EditText)findViewById(R.id.editRate);
TextView convertedText = (TextView)findViewById(R.id.textResult);
try {
inputRate = Double.parseDouble(inputText.getText().toString())/100.0;
} catch (Exception ex) {
inputText.setText("0.0");
}
if(((RadioButton)(findViewById(R.id.radioMonthly))).isChecked()) {
//If converting to monthly
convertedRate = (pow((1.0 + inputRate),(1.0/12.0)) - 1.0)*100.0;
} else {
//Converting to yearly
convertedRate = (pow((1.0 + inputRate), 12) - 1.0) * 100.0;
}
convertedText.setText(String.format("Converted Rate is %1$.4f%%", convertedRate));
}
}
Activity.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import static java.lang.Math.pow;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void HandleClick(View arg0) {
double inputRate = 0.0;
double convertedRate = 0.0;
EditText inputText = (EditText)findViewById(R.id.editRate);
TextView convertedText = (TextView)findViewById(R.id.textResult);
try {
inputRate = Double.parseDouble(inputText.getText().toString())/100.0;
} catch (Exception ex) {
inputText.setText("0.0");
}
if(((RadioButton)(findViewById(R.id.radioMonthly))).isChecked()) {
//If converting to monthly
convertedRate = (pow((1.0 + inputRate),(1.0/12.0)) - 1.0)*100.0;
} else {
//Converting to yearly
convertedRate = (pow((1.0 + inputRate), 12) - 1.0) * 100.0;
}
convertedText.setText(String.format("Converted Rate is %1$.4f%%", convertedRate));
}
}
.xml
<?xml version="1.0" encoding="UTF-8"?>
-<ScrollView android:layout_height="match_parent" android:layout_width="match_parent" android:id="@+id/activity_main" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android">
-<RelativeLayout android:layout_height="match_parent" android:layout_width="match_parent">
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textTitle" android:layout_centerHorizontal="true" android:textStyle="normal|bold" android:textSize="20sp" android:text="Convert Interest Rates"/>
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textView" android:textSize="18sp" android:text="Rate to Convert %" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_alignBottom="@+id/editRate" android:layout_alignBaseline="@+id/editRate"/>
-<RadioGroup android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/radioGroup" android:layout_below="@+id/editRate">
<RadioButton android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/radioMonthly" android:textSize="18sp" android:text="Yearly to Monthly" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_weight="1" android:checked="true"/>
<RadioButton android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/radioYearly" android:textSize="18sp" android:text="Monthly to Yearly" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_below="@+id/radioMonthly" android:layout_weight="1" android:layout_marginTop="14dp"/>
</RadioGroup>
<Button android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/button" android:text="Convert" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_below="@+id/radioGroup" android:layout_marginTop="16dp" android:onClick="HandleClick"/>
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/textResult" android:textSize="18sp" android:text="Press Convert for % Result" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_below="@+id/button" android:layout_weight="1" android:layout_marginTop="21dp"/>
<EditText android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/editRate" android:text="0.0" android:layout_below="@+id/textTitle" android:layout_toEndOf="@+id/radioGroup" android:layout_toRightOf="@+id/radioGroup" android:width="100dp" android:inputType="numberDecimal"/>
</RelativeLayout>
</ScrollView>
****************************************************************************************
Q2-----------------------------------------------------------------------------------
activity.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:text="Convert Interest Rates"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textTitle"
android:textSize="20sp"
android:textStyle="normal|bold"
android:layout_centerHorizontal="true" />
<TextView
android:text="Rate to Convert %"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView"
android:textSize="18sp"
android:layout_alignBaseline="@+id/editRate"
android:layout_alignBottom="@+id/editRate"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioGroup"
android:layout_below="@+id/editRate" >
<RadioButton
android:text="Yearly to Monthly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioMonthly"
android:textSize="18sp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:checked="true"
android:layout_weight="1" />
<RadioButton
android:text="Monthly to Yearly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioYearly"
android:textSize="18sp"
android:layout_below="@+id/radioMonthly"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="14dp"
android:layout_weight="1" />
</RadioGroup>
<Button
android:text="Convert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button"
android:layout_below="@+id/radioGroup"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="16dp"
android:onClick="HandleClick" />
<TextView
android:text="Press Convert for % Result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textResult"
android:textSize="18sp"
android:layout_below="@+id/button"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="21dp"
android:layout_weight="1" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:id="@+id/editRate"
android:width="100dp"
android:text="0.0"
android:layout_below="@+id/textTitle"
android:layout_toRightOf="@+id/radioGroup"
android:layout_toEndOf="@+id/radioGroup" />
</RelativeLayout>
activity.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import static java.lang.Math.pow;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//For Button presses (linked via onClick attribute)
public void HandleClick(View arg0) {
double inputRate = 0.0;
double convertedRate = 0.0;
EditText inputText = (EditText)findViewById(R.id.editRate);
TextView convertedText = (TextView)findViewById(R.id.textResult);
try {
inputRate = Double.parseDouble(inputText.getText().toString())/100.0;
} catch (Exception ex) {
inputText.setText("0.0");
}
if(((RadioButton)(findViewById(R.id.radioMonthly))).isChecked()) {
//If converting to monthly
convertedRate = (pow((1.0 + inputRate),(1.0/12.0)) - 1.0)*100.0;
} else {
//Converting to yearly
convertedRate = (pow((1.0 + inputRate), 12) - 1.0) * 100.0;
}
convertedText.setText(String.format("Converted Rate is %1$.4f%%", convertedRate));
}
}