티스토리 뷰
xml 파일은 앱의 껍데기, 즉 레이아웃만을 제작해줍니다.
앱의 작동을 위해서는 java와 xml을 연결 해주어야 합니다.
TextView 레이아웃을 눌렀을 때 어떤 동작을 실행하고 싶다면, TextView 태그에 id 속성을 추가해줍니다.
android:id="@+id/원하는id이름"
java의
public class MainActivity extends AppCompatActivity
의 하위에
id를 추가해준 태그의 이름을 먼저 써준 다음, 원하는 변수명을 선언합니다.
TextView var;
이런식으로 선언하면 됩니다.
그 다음,
protected void onCreate(Bundle savedInstanceState)
의 하위에
변수명 = (레이아웃태그이름) findViewById(R.id.id이름);
이렇게 작성해주면 java와 xml의 연결이 완료됩니다.
Ex> xml과 java 연결하기
i) xml
<TextView
android:id="@+id/in_7"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#8f678f"
android:gravity="center"
android:text="7"
android:textSize="9pt"
/>
<TextView
android:id="@+id/in_8"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#ff4a8c"
android:gravity="center"
android:text="8"
android:textSize="9pt"
/>
<TextView
android:id="@+id/in_9"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#f0f"
android:gravity="center"
android:text="9"
android:textSize="9pt"
/>
<TextView
android:id="@+id/gop"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#ffe4ff"
android:gravity="center"
android:text="×"
android:textSize="9pt"
/>
ii) java
public class MainActivity extends AppCompatActivity {
TextView btn7, btn8, btn9;
TextView gop;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn7 = (TextView) findViewById(R.id.in_7);
btn8 = (TextView) findViewById(R.id.in_8);
btn9 = (TextView) findViewById(R.id.in_9);
gop = (TextView) findViewById(R.id.gop);
}
}