Skip to content

Commit cbb8bee

Browse files
committed
Third commit
1 parent aa1a2fa commit cbb8bee

File tree

8 files changed

+64
-14
lines changed

8 files changed

+64
-14
lines changed

app/src/main/AndroidManifest.xml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,13 @@
44

55
<application
66
android:allowBackup="true"
7-
android:icon="@mipmap/ic_launcher"
8-
android:label="@string/app_name"
9-
android:roundIcon="@mipmap/ic_launcher_round"
7+
android:icon="@mipmap/calc"
8+
android:label="Calculator"
9+
android:roundIcon="@mipmap/calc"
1010
android:supportsRtl="true"
1111
android:theme="@style/AppTheme">
12-
<activity android:name=".MainActivity">
12+
<activity android:name=".MainActivity"
13+
android:screenOrientation="portrait">
1314
<intent-filter>
1415
<action android:name="android.intent.action.MAIN" />
1516

app/src/main/java/com/example/mycalculator/MainActivity.java

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,15 @@
88
import android.widget.TextView;
99
import android.widget.Toast;
1010

11+
import java.util.Stack;
12+
1113
public class MainActivity extends AppCompatActivity {
1214

1315
Button button0,button1,button2,button3,button4,button5,button6,button7,button8,button9;
14-
Button buttonAdd,buttonSubtract,buttonMul,buttonDiv,buttonClear,buttonEqual,buttonExit;
15-
String result,posi;
16+
Button buttonAdd,buttonSubtract,buttonMul,buttonDiv,buttonClear,buttonEqual,buttonExit,buttonraise,buttondel;
17+
String result,result2;
1618
String tmp,operator;
17-
19+
boolean flag = false;
1820
TextView resultTextView,t1view;
1921

2022
@Override
@@ -24,6 +26,7 @@ protected void onCreate(Bundle savedInstanceState) {
2426
initControl();
2527
initControlListener();
2628
t1view = findViewById(R.id.textview);
29+
resultTextView.setTextSize(40);
2730
}
2831

2932
private void initControlListener(){
@@ -123,6 +126,18 @@ public void onClick(View v) {
123126
onEqualButtonClicked();
124127
}
125128
});
129+
buttonraise.setOnClickListener(new View.OnClickListener() {
130+
@Override
131+
public void onClick(View v) {
132+
onOperatorButtonClicked("^");
133+
}
134+
});
135+
buttondel.setOnClickListener(new View.OnClickListener() {
136+
@Override
137+
public void onClick(View v) {
138+
onDeleteButtonClicked();
139+
}
140+
});
126141
buttonExit.setOnClickListener(new View.OnClickListener() {
127142
@Override
128143
public void onClick(View v) {
@@ -138,10 +153,12 @@ private void onExitButtonClicked(){
138153
}
139154

140155
private void onEqualButtonClicked(){
141-
int res= 0;
156+
long res= 0;
157+
flag = true;
142158
try{
143-
int number = Integer.valueOf(tmp);
144-
int number2 = Integer.valueOf(resultTextView.getText().toString().substring(tmp.length()+operator.length(),resultTextView.length()));
159+
long number = Long.valueOf(tmp);
160+
long number2 = Long.valueOf(resultTextView.getText().toString().substring(tmp.length()+operator.length(),resultTextView.length()));
161+
145162
switch (operator) {
146163
case "+":
147164
res = number + number2;
@@ -158,14 +175,19 @@ private void onEqualButtonClicked(){
158175
case "*":
159176
res = number * number2;
160177
break;
178+
179+
case "^":
180+
res = (int)Math.pow(number,number2);
161181
}
162182
result = String.valueOf(res);
183+
163184
resultTextView.setText(result);
164185
}catch (Exception e){
165186
e.printStackTrace();
166187
}
167188
}
168189

190+
169191
private void onOperatorButtonClicked(String operator){
170192
tmp = resultTextView.getText().toString();
171193
//onClearButtonClicked();
@@ -180,11 +202,18 @@ private void onClearButtonClicked() {
180202

181203
private void onNumberButtonClicked(String pos){
182204
result = resultTextView.getText().toString();
183-
this.posi=pos;
184-
result = result+posi;
205+
result = result+pos;
185206
resultTextView.setText(result);
186207
}
187208

209+
private void onDeleteButtonClicked(){
210+
if(flag){
211+
onClearButtonClicked();
212+
}else {
213+
resultTextView.setText(resultTextView.getText().toString().substring(0, resultTextView.getText().length() - 1));
214+
}
215+
}
216+
188217
private void initControl() {
189218
button0 = findViewById(R.id.button0);
190219
button1 = findViewById(R.id.button1);
@@ -203,6 +232,8 @@ private void initControl() {
203232
buttonMul = findViewById(R.id.buttonMul);
204233
buttonDiv = findViewById(R.id.buttonDiv);
205234
buttonEqual = findViewById(R.id.buttonEqual);
235+
buttonraise = findViewById(R.id.buttonraiseto);
236+
buttondel = findViewById(R.id.buttondelete);
206237

207238
resultTextView = findViewById(R.id.textview_result);
208239
buttonExit = findViewById(R.id.buttonexit);

app/src/main/res/layout/activity_main.xml

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
android:layout_width="match_parent"
1515
android:layout_height="wrap_content"
1616
android:id="@+id/textview_result"
17-
android:textSize="60sp"
1817
android:textAlignment="viewEnd"/>
1918
<TableRow
2019
android:layout_width="match_parent"
@@ -125,6 +124,24 @@
125124
android:textSize="20sp"/>
126125
</TableRow>
127126

127+
<TableRow
128+
android:layout_width="match_parent"
129+
android:layout_height="match_parent"
130+
android:background="@color/colorPrimary">
131+
132+
<Button
133+
android:id="@+id/buttonraiseto"
134+
android:text="power"
135+
android:layout_weight="1"
136+
android:textSize="20sp"/>
137+
<Button
138+
android:id="@+id/buttondelete"
139+
android:text="DEL"
140+
android:layout_weight="1"
141+
android:textSize="20sp"/>
142+
143+
</TableRow>
144+
128145
<TableRow
129146
android:layout_width="match_parent"
130147
android:layout_height="match_parent"
@@ -150,7 +167,8 @@
150167
android:id="@+id/textview"
151168
android:gravity="center"
152169
android:textStyle="bold"
153-
android:text="Thankyou For Using"
170+
android:text="Thanks For Using"
171+
android:drawableRight="@mipmap/calc"
154172
android:textSize="30sp"
155173
android:textAlignment="center"/>
156174

app/src/main/res/mipmap-hdpi/calc.png

2.77 KB
Loading

app/src/main/res/mipmap-mdpi/calc.png

1.54 KB
Loading
3.4 KB
Loading
6.86 KB
Loading
9.96 KB
Loading

0 commit comments

Comments
 (0)