package org.androidtown.mycalendar;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.GridView;
import android.widget.TextView;
import android.widget.Toast;
public class CalendarMonthViewActivity extends Activity {
GridView monthView;
CalendarMonthAdapter monthViewAdapter;
public static final int REQUEST_CODE_ADD = 1001;
TextView monthText;
int curYear;
int curMonth;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
monthView = (GridView) findViewById(R.id.monthView);
monthViewAdapter = new CalendarMonthAdapter(this);
monthView.setAdapter(monthViewAdapter);
monthView.setBackgroundColor(Color.LTGRAY);
monthView.setVerticalSpacing(1);
monthView.setHorizontalSpacing(1);
monthView.setStretchMode(GridView.STRETCH_COLUMN_WIDTH);
monthView.setNumColumns(7);
// set listener
monthView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
if (monthViewAdapter != null) {
monthViewAdapter.setSelectedPosition(position);
monthViewAdapter.notifyDataSetInvalidated();
}
MonthItem curItem = (MonthItem) monthViewAdapter.getItem(position);
int day = curItem.getDay();
Toast.makeText(getApplicationContext(), "Selected : " + day, 1000).show();
//Log.d("CalendarMonthViewActivity", "Selected : " + day);
}
});
monthText = (TextView) findViewById(R.id.monthText);
setMonthText();
Button monthPrevious = (Button) findViewById(R.id.monthPrevious);
monthPrevious.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
monthViewAdapter.setPreviousMonth();
monthViewAdapter.notifyDataSetChanged();
setMonthText();
}
});
Button monthNext = (Button) findViewById(R.id.monthNext);
monthNext.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
monthViewAdapter.setNextMonth();
monthViewAdapter.notifyDataSetChanged();
setMonthText();
}
});
}
private void setMonthText() {
curYear = monthViewAdapter.getCurYear();
curMonth = monthViewAdapter.getCurMonth();
monthText.setText(curYear + "년 " + (curMonth+1) + "월");
}
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
addOptionMenuItems(menu);
return true;
}
private void addOptionMenuItems(Menu menu) {
int base = Menu.FIRST;
MenuItem item01 = menu.add(0,1,0,"ssssss");
}
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == 1) {
Intent intent = new Intent(getBaseContext(), AboutDialog.class);
startActivityForResult(intent, REQUEST_CODE_ADD);
}
return true;
}
}
--------------------------AboutDialog
public class AboutDialog extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.add);
}
}
제가 이런식으로 맨 밑에 옵션메뉴를 만들고 AboutDialog 라는 다른 액티비티로 인텐트를 시켰는데요.그리고 AboutDialog는 그냥 add.xml을 보여주도록만 하였습니다. 그런데 옵션메뉴에서 sssss 저걸 누르면오류나면서 계속 꺼지네요... 왜그런건가요? xml에 이상이 있는건가요? 그냥 에디트텍스트와 버튼몇개 넣어서 만든거 밖에 없는데요..