뭔가 결과가 이상한데 이유를 모르겠다.

<!--main06.xml-->
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:id="@+id/baseLayout"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"
android:textSize="25dp"
></TextView>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"
android:textSize="25dp"
android:background="@color/black"
></Button>
</LinearLayout>
<!--menu1.xml-->
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:id="@+id/baseLayout"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"
android:textSize="25dp"
></TextView>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"
android:textSize="25dp"
android:background="@color/black"
></Button>
</LinearLayout>
package com.example.project1016_b;
import androidx.appcompat.app.AppCompatActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.MenuInflater;
import android.widget.Button;
import android.widget.LinearLayout;
import android.view.*;
import androidx.annotation.NonNull;
public class MainActivity extends AppCompatActivity {
LinearLayout baseLayout;
Button button1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main06);
setTitle("배경색 바꾸기");
baseLayout = (LinearLayout) findViewById(R.id.baseLayout);
button1 = (Button) findViewById(R.id.button1);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.menu1, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if (item.getItemId() == R.id.itemRed) {
baseLayout.setBackgroundColor(Color.RED);
return true;
} else if (item.getItemId() == R.id.itemGreen) {
baseLayout.setBackgroundColor(Color.GREEN);
return true;
} else if (item.getItemId() == R.id.itemBlue) {
baseLayout.setBackgroundColor(Color.BLUE);
return true;
} else if (item.getItemId() == R.id.subRotate) {
button1.setRotation(45);
return true;
} else if (item.getItemId() == R.id.subSize) {
button1.setScaleX(2);
return true;
}
return false;
}
}
/*package com.example.project1016_b;
import androidx.appcompat.app.AppCompatActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout baseLayout = new LinearLayout(this);
baseLayout.setOrientation(LinearLayout.VERTICAL);
LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT);
baseLayout.setBackgroundColor(Color.rgb(0,255,0));
setContentView(baseLayout);
Button btn = new Button(this);
btn.setText("버튼입니다");
btn.setBackgroundColor(Color.MAGENTA);
baseLayout.addView(btn);
btn.setOnClickListener(new View.OnClickListener(){
public void onClick(View arg0){
Toast.makeText(getApplicationContext(), "코드로 생성한 버튼입니다", Toast.LENGTH_SHORT).show();
}
});
//setContentView(R.layout.activity_main);
}
}*/
암튼 MainActivity.java를 java만 써서 좀 더 쉬운코드로 변환해보자
package com.example.b1113;
import androidx.appcompat.app.AppCompatActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.MenuInflater;
import android.widget.Button;
import android.widget.LinearLayout;
import android.view.*;
public class MainActivity extends AppCompatActivity {
LinearLayout baseLayout;
Button button1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main01);
setTitle("배경색 바꾸기");
baseLayout = (LinearLayout) findViewById(R.id.baseLayout);
button1 = (Button) findViewById(R.id.button1);
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
super.onCreateOptionsMenu(menu);
menu.add(0,1,0,"배경색(빨강)");
menu.add(0,2,0,"배경색(초록)");
menu.add(0,3,0,"배경색(파랑)");
SubMenu sMenu = menu.addSubMenu("버튼 변경>>");
sMenu.add(0,4,0,"버튼 45도 회전");
sMenu.add(0,5,0,"버튼 2배 확대");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item){
if (item.getItemId() == 1) {
baseLayout.setBackgroundColor(Color.RED);
return true;
} else if (item.getItemId() == 2) {
baseLayout.setBackgroundColor(Color.GREEN);
return true;
} else if (item.getItemId() == 3) {
baseLayout.setBackgroundColor(Color.BLUE);
return true;
} else if (item.getItemId() == 4) {
button1.setRotation(45);
return true;
} else if (item.getItemId() == 5) {
button1.setScaleX(2);
return true;
}
return false;
}
}'computing' 카테고리의 다른 글
| 20251117 - iOS12 (0) | 2025.11.17 |
|---|---|
| 20251103_iOS10 (0) | 2025.11.03 |
| 20251030_android8 (0) | 2025.10.30 |
| 20251027_iOS9 (0) | 2025.10.27 |
| 20251013_iOS_7주차 (0) | 2025.10.13 |