アンドロイドアクティビティでCaldroid calendarを使用して日付ピッカーを作成する方法を教えてください。ここでCalドロイドカレンダーはアンドロイドアクティビティの日付ピッカーとして使用しています
-1
A
答えて
1
は、サンプルアプリケーションです:ドロイドカレンダーCALは何
@SuppressLint("SimpleDateFormat")
public class CaldroidSampleActivity extends AppCompatActivity {
private boolean undo = false;
private CaldroidFragment caldroidFragment;
private CaldroidFragment dialogCaldroidFragment;
private void setCustomResourceForDates() {
Calendar cal = Calendar.getInstance();
// Min date is last 7 days
cal.add(Calendar.DATE, -7);
Date blueDate = cal.getTime();
// Max date is next 7 days
cal = Calendar.getInstance();
cal.add(Calendar.DATE, 7);
Date greenDate = cal.getTime();
if (caldroidFragment != null) {
ColorDrawable blue = new ColorDrawable(getResources().getColor(R.color.blue));
ColorDrawable green = new ColorDrawable(Color.GREEN);
caldroidFragment.setBackgroundDrawableForDate(blue, blueDate);
caldroidFragment.setBackgroundDrawableForDate(green, greenDate);
caldroidFragment.setTextColorForDate(R.color.white, blueDate);
caldroidFragment.setTextColorForDate(R.color.white, greenDate);
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final SimpleDateFormat formatter = new SimpleDateFormat("dd MMM yyyy");
// Setup caldroid fragment
// **** If you want normal CaldroidFragment, use below line ****
caldroidFragment = new CaldroidFragment();
// //////////////////////////////////////////////////////////////////////
// **** This is to show customized fragment. If you want customized
// version, uncomment below line ****
// caldroidFragment = new CaldroidSampleCustomFragment();
// Setup arguments
// If Activity is created after rotation
if (savedInstanceState != null) {
caldroidFragment.restoreStatesFromKey(savedInstanceState,
"CALDROID_SAVED_STATE");
}
// If activity is created from fresh
else {
Bundle args = new Bundle();
Calendar cal = Calendar.getInstance();
args.putInt(CaldroidFragment.MONTH, cal.get(Calendar.MONTH) + 1);
args.putInt(CaldroidFragment.YEAR, cal.get(Calendar.YEAR));
args.putBoolean(CaldroidFragment.ENABLE_SWIPE, true);
args.putBoolean(CaldroidFragment.SIX_WEEKS_IN_CALENDAR, true);
// Uncomment this to customize startDayOfWeek
// args.putInt(CaldroidFragment.START_DAY_OF_WEEK,
// CaldroidFragment.TUESDAY); // Tuesday
// Uncomment this line to use Caldroid in compact mode
// args.putBoolean(CaldroidFragment.SQUARE_TEXT_VIEW_CELL, false);
// Uncomment this line to use dark theme
// args.putInt(CaldroidFragment.THEME_RESOURCE, com.caldroid.R.style.CaldroidDefaultDark);
caldroidFragment.setArguments(args);
}
setCustomResourceForDates();
// Attach to the activity
FragmentTransaction t = getSupportFragmentManager().beginTransaction();
t.replace(R.id.calendar1, caldroidFragment);
t.commit();
// Setup listener
final CaldroidListener listener = new CaldroidListener() {
@Override
public void onSelectDate(Date date, View view) {
Toast.makeText(getApplicationContext(), formatter.format(date),
Toast.LENGTH_SHORT).show();
}
@Override
public void onChangeMonth(int month, int year) {
String text = "month: " + month + " year: " + year;
Toast.makeText(getApplicationContext(), text,
Toast.LENGTH_SHORT).show();
}
@Override
public void onLongClickDate(Date date, View view) {
Toast.makeText(getApplicationContext(),
"Long click " + formatter.format(date),
Toast.LENGTH_SHORT).show();
}
@Override
public void onCaldroidViewCreated() {
if (caldroidFragment.getLeftArrowButton() != null) {
Toast.makeText(getApplicationContext(),
"Caldroid view is created", Toast.LENGTH_SHORT)
.show();
}
}
};
// Setup Caldroid
caldroidFragment.setCaldroidListener(listener);
final TextView textView = (TextView) findViewById(R.id.textview);
final Button customizeButton = (Button) findViewById(R.id.customize_button);
// Customize the calendar
customizeButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (undo) {
customizeButton.setText(getString(R.string.customize));
textView.setText("");
// Reset calendar
caldroidFragment.clearDisableDates();
caldroidFragment.clearSelectedDates();
caldroidFragment.setMinDate(null);
caldroidFragment.setMaxDate(null);
caldroidFragment.setShowNavigationArrows(true);
caldroidFragment.setEnableSwipe(true);
caldroidFragment.refreshView();
undo = false;
return;
}
// Else
undo = true;
customizeButton.setText(getString(R.string.undo));
Calendar cal = Calendar.getInstance();
// Min date is last 7 days
cal.add(Calendar.DATE, -7);
Date minDate = cal.getTime();
// Max date is next 7 days
cal = Calendar.getInstance();
cal.add(Calendar.DATE, 14);
Date maxDate = cal.getTime();
// Set selected dates
// From Date
cal = Calendar.getInstance();
cal.add(Calendar.DATE, 2);
Date fromDate = cal.getTime();
// To Date
cal = Calendar.getInstance();
cal.add(Calendar.DATE, 3);
Date toDate = cal.getTime();
// Set disabled dates
ArrayList<Date> disabledDates = new ArrayList<Date>();
for (int i = 5; i < 8; i++) {
cal = Calendar.getInstance();
cal.add(Calendar.DATE, i);
disabledDates.add(cal.getTime());
}
// Customize
caldroidFragment.setMinDate(minDate);
caldroidFragment.setMaxDate(maxDate);
caldroidFragment.setDisableDates(disabledDates);
caldroidFragment.setSelectedDates(fromDate, toDate);
caldroidFragment.setShowNavigationArrows(false);
caldroidFragment.setEnableSwipe(false);
caldroidFragment.refreshView();
// Move to date
// cal = Calendar.getInstance();
// cal.add(Calendar.MONTH, 12);
// caldroidFragment.moveToDate(cal.getTime());
String text = "Today: " + formatter.format(new Date()) + "\n";
text += "Min Date: " + formatter.format(minDate) + "\n";
text += "Max Date: " + formatter.format(maxDate) + "\n";
text += "Select From Date: " + formatter.format(fromDate)
+ "\n";
text += "Select To Date: " + formatter.format(toDate) + "\n";
for (Date date : disabledDates) {
text += "Disabled Date: " + formatter.format(date) + "\n";
}
textView.setText(text);
}
});
Button showDialogButton = (Button) findViewById(R.id.show_dialog_button);
final Bundle state = savedInstanceState;
showDialogButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Setup caldroid to use as dialog
dialogCaldroidFragment = new CaldroidFragment();
dialogCaldroidFragment.setCaldroidListener(listener);
// If activity is recovered from rotation
final String dialogTag = "CALDROID_DIALOG_FRAGMENT";
if (state != null) {
dialogCaldroidFragment.restoreDialogStatesFromKey(
getSupportFragmentManager(), state,
"DIALOG_CALDROID_SAVED_STATE", dialogTag);
Bundle args = dialogCaldroidFragment.getArguments();
if (args == null) {
args = new Bundle();
dialogCaldroidFragment.setArguments(args);
}
} else {
// Setup arguments
Bundle bundle = new Bundle();
// Setup dialogTitle
dialogCaldroidFragment.setArguments(bundle);
}
dialogCaldroidFragment.show(getSupportFragmentManager(),
dialogTag);
}
});
}
/**
* Save current states of the Caldroid here
*/
@Override
protected void onSaveInstanceState(Bundle outState) {
// TODO Auto-generated method stub
super.onSaveInstanceState(outState);
if (caldroidFragment != null) {
caldroidFragment.saveStatesToKey(outState, "CALDROID_SAVED_STATE");
}
if (dialogCaldroidFragment != null) {
dialogCaldroidFragment.saveStatesToKey(outState,
"DIALOG_CALDROID_SAVED_STATE");
}
}
}
関連する問題
- 1. 角度モーメント・ピッカーすべての日付は、私はシンプルな日付ピッカー使用しています
- 2. 日付ピッカーはこの日付ピッカーを使用して、最初のページロード
- 3. Symfony Sonata Project - 日付ピッカーを使用したフィルタータイプですが、日付ピッカーを使用していません
- 4. 最大日付は、私が使用しています日付ピッカー
- 5. 角度ブートストラップ日付ピッカーは、私がで角度ブートストラップ日付ピッカーを使用している近い/ぼかし
- 6. 私のような私のMVC3プロジェクトでtelerikの日付ピッカーを使用していますTelerik日付ピッカー
- 7. 日付ピッカーと日付範囲選択ツールとして使用できるカレンダープラグ
- 8. 日付ピッカーGoogleトランスレータを使用している日付の変更
- 9. イオン日付ピッカーを使用して月に一日を取得
- 10. jQueryを使用してUmbraco日付ピッカーの日付を設定する
- 11. 日付ピッカーUIは、私が使用して3.1
- 12. 私は日付のカスタム範囲を達成するためにjqueryのUIの日付ピッカーを使用していますjqueryのUI日付ピッカーから
- 13. Seleniumを使用して日付ピッカーの日付を自動的に選択
- 14. queryBuilderを使用した日付ピッカー
- 15. JSFを使用したJQuery日付ピッカー
- 16. 私は2日付ピッカーの日付ピッカー
- 17. 日付ピッカーはアラビア文化の日付を設定していません
- 18. asp.netを使用して別の日付ピッカーで日付ピッカーを制限するC#
- 19. selenium webdriverを使用してブートストラップの日付ピッカーを自動化しますか?
- 20. materializecss 『日付ピッカー」日付ピッカー
- 21. ユーザーの日付と時刻のピッカーを日付として保存する
- 22. アンドロイドの日付ピッカーの問題に直面しています
- 23. ngx-bootstrap:モーダル日付ピッカーを使用した日付入力
- 24. 私はActionSheetDatePickerを使用していOBJの中に日付ピッカーC
- 25. は持っている日付ピッカー
- 26. 隠し日付ピッカー
- 27. は、日付ピッカーが機能していないjqueryを持っています
- 28. ブートストラップ日付ピッカーをクリックして問題
- 29. このstratDateがに設定されている中で、私は、ブートストラップ日付ピッカーを使用しています
- 30. GWT日付ピッカーpostgresqlでhibernateを使用してJava日付を保存するときのフォーマットの問題
:ここhttps://github.com/roomorama/Caldroid/tree/master/caldroidSampleActivity
アクティビティのコードですか?あなたの質問に詳しい情報を投稿してください! – pleft
https://github.com/roomorama/Caldroid – ganii
あなたはちょうどあなたが送ったgithubのレポのreadmeにちょっと!それを試しましたか? – pleft