https://gist.github.com/2383248から抜粋した例であるこのコードを使用しようとしていますが、publicvoidonClickでエラーが発生しています。
この行の複数のマーカー-android.view.View.OnClickListener.onClickを実装します-構文エラー、「}」を挿入してMethodBodyを完成させますが、中括弧を追加すると、さまざまな提案やアイデアを何度も試行して失敗した後、別のエラーがスローされます。
構文エラーと私からの悪いコーディング(プログラミングを学び始めたばかり)かもしれませんが、これを解決する方法や正しい方向に私を向ける方法を誰かが知っていますか?私は非常に感謝しています。
public class ICSCalendarActivity extends Activity implements View.OnClickListener{
Button button1;
int year1;
int month1;
int day1;
int ShiftPattern;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button1 = (Button)findViewById(R.id.openButton);
button1.setText("open");
button1.setOnClickListener(this);
Bundle extras = getIntent().getExtras();
year1 = extras.getInt("year1");
day1 = extras.getInt("day1");
month1 = extras.getInt("month1");
ShiftPattern = extras.getInt("ShiftPattern");
}
public void onClick(View v){
private static void addToCalendar(Context ICSCalendarActivity, final String title, final long dtstart, final long dtend) {
final ContentResolver cr = ICSCalendarActivity.getContentResolver();
Cursor cursor ;
if (Integer.parseInt(Build.VERSION.SDK) >= 8 )
cursor = cr.query(Uri.parse("content://com.android.calendar/calendars"), new String[]{ "_id", "displayname" }, null, null, null);
else
cursor = cr.query(Uri.parse("content://calendar/calendars"), new String[]{ "_id", "displayname" }, null, null, null);
if ( cursor.moveToFirst() ) {
final String[] calNames = new String[cursor.getCount()];
final int[] calIds = new int[cursor.getCount()];
for (int i = 0; i < calNames.length; i++) {
calIds[i] = cursor.getInt(0);
calNames[i] = cursor.getString(1);
cursor.moveToNext();
}
AlertDialog.Builder builder = new AlertDialog.Builder(ICSCalendarActivity);
builder.setSingleChoiceItems(calNames, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ContentValues cv = new ContentValues();
cv.put("calendar_id", calIds[which]);
cv.put("title", title);
cv.put("dtstart", dtstart );
cv.put("hasAlarm", 1);
cv.put("dtend", dtend);
Uri newEvent ;
if (Integer.parseInt(Build.VERSION.SDK) >= 8 )
newEvent = cr.insert(Uri.parse("content://com.android.calendar/events"), cv);
else
newEvent = cr.insert(Uri.parse("content://calendar/events"), cv);
if (newEvent != null) {
long id = Long.parseLong( newEvent.getLastPathSegment() );
ContentValues values = new ContentValues();
values.put( "event_id", id );
values.put( "method", 1 );
values.put( "minutes", 15 ); // 15 minutes
if (Integer.parseInt(Build.VERSION.SDK) >= 8 )
cr.insert( Uri.parse( "content://com.android.calendar/reminders" ), values );
else
cr.insert( Uri.parse( "content://calendar/reminders" ), values );
}
dialog.cancel();
}
});
builder.create().show();
}
cursor.close();
} }
ありがとうございました。