안드로이드를 이용한 커스텀 달력을 만들고있는데, 리니어 레이아웃을 배열을 사용해서 만들었습니다. 아래와 같은 화면까지 만들었는데 문제없이 Run Tasks 되는데 어플리케이션은 무엇이 충돌하는지 실행되지 않습니다 무엇이 문제인가요 ?
package com.example.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
ScrollView scrollView;
LinearLayout total1,month1;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater mInflater = getMenuInflater();
mInflater.inflate(R.menu.menu1, menu);
return true;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LinearLayout wk[] = new LinearLayout[54];
total1 = (LinearLayout) findViewById(R.id.total);
month1 = (LinearLayout) findViewById(R.id.month);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
params.weight = 1;
for (int i=0; i<54; i++){
wk[i] = new LinearLayout(this);
wk[i].setOrientation(LinearLayout.HORIZONTAL);
month1.addView(wk[i]);
}
total1.addView(month1);
final Button btn[] = new Button[368];
for (int i = 0; i < 368; i++) {
btn[i] = new Button(this);
btn[i].setWidth(20);
btn[i].setTextSize(11);
btn[i].setBackgroundColor(Color.WHITE);
btn[i].setId(i);
}
for(int i = 0 ; i < 7; i++) {
for (int j = 1; j < 54; j++) {
wk[j].addView(btn[i + ((j-1) * 7)],params);
}
}
for(int i=0; i<3; i++) {
btn[i].setText("" + (i + 29));
}
for(int i=3; i<34; i++){
btn[i].setText(""+(i-2));
}
for(int i=34; i<63; i++){
btn[i].setText(""+(i-33));
}
for(int i=63; i<94; i++){
btn[i].setText(""+(i-62));
}
for(int i=94; i<124; i++){
btn[i].setText(""+(i-93));
}
for(int i=124; i<155; i++){
btn[i].setText(""+(i-123));
}
}
============ JAVA 코드입니다. ============
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:context=".MainActivity"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true"
android:background="#000"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="10dp"
android:text="2020년 Scroll 달력"
android:textSize="20dp"
android:textColor="#FFF"/>
<Button
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="오늘"/>
<Button
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="보기 방식"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#000"
android:orientation="horizontal">
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:textSize="20dp"
android:text="1월"
android:textColor="#fff">
</TextView>
</LinearLayout>
<!--요일-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="20dp"
android:gravity="top"
android:background="#eaeae9"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="일"
android:textSize="9sp"
android:textColor="#FF0000" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="월"
android:textColor="#000000"
android:textSize="9sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="화"
android:textColor="#000000"
android:textSize="9sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="수"
android:textColor="#000000"
android:textSize="9sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="목"
android:textColor="#000000"
android:textSize="9sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="금"
android:textColor="#000000"
android:textSize="9sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="토"
android:textSize="9sp"
android:textColor="#0067a3"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/total"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/month"
android:orientation="horizontal">
</LinearLayout>
</LinearLayout>
</LinearLayout>
==================XML코드 입니다==============