Q&A
実現したいこと
カレンダーから日付を入力するんじゃなくて、ドラムロールみたいな回転で日付を入力したいのですが、どうしたらいいでしょうか?
AlertDialog.THEME_HOLO_LIGHT()をつかうのかなと思っていたのですが、エラーが出て使えません。
該当のソースコード
java
1ソースコード 2package com.example.task_project; 3 4import androidx.annotation.RequiresApi; 5import androidx.appcompat.app.AppCompatActivity; 6 7import android.app.AlertDialog; 8import android.app.DatePickerDialog; 9import android.os.Build; 10import android.os.Bundle; 11import android.view.View; 12import android.widget.Button; 13import android.widget.DatePicker; 14import android.widget.EditText; 15import android.widget.ImageView; 16import android.icu.util.Calendar; 17 18 19public class Add_task_2 extends AppCompatActivity { 20 EditText showDate; 21 @Override 22 protected void onCreate(Bundle savedInstanceState) { 23 super.onCreate(savedInstanceState); 24 setContentView(R.layout.activity_add_task2); 25 26 ImageView imageView = findViewById(R.id.date_picker_actions); 27 28 EditText editText = findViewById(R.id.date); 29// imageView.setOnClickListener( v -> { 30// EditText editText = findViewById(R.id.date); 31// MyDatePicker.showDatePicker(editText); 32// }); 33 34 35 //EditTextにリスナーをつける 36 imageView.setOnClickListener(new View.OnClickListener() { 37 @RequiresApi(api = Build.VERSION_CODES.N) 38 @Override 39 public void onClick(View v) { 40 //Calendarインスタンスを取得 41 Calendar date = Calendar.getInstance(); 42 43 //DatePickerDialogインスタンスを取得 44 DatePickerDialog datePickerDialog = new DatePickerDialog( 45 Add_task_2.this, 46 new DatePickerDialog.OnDateSetListener() { 47 @Override 48 public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { 49 //setした日付を取得して表示 50 editText.setText(String.format("%d / %02d / %02d", year, month+1, dayOfMonth)); 51 } 52 }, 53 date.get(Calendar.YEAR), 54 date.get(Calendar.MONTH), 55 date.get(Calendar.DATE) 56 ); 57 58 //dialogを表示 59 datePickerDialog.show(); 60 61 } 62 }); 63 } 64}
xml
1<?xml version="1.0" encoding="utf-8"?> 2<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:app="http://schemas.android.com/apk/res-auto" 4 xmlns:tools="http://schemas.android.com/tools" 5 android:layout_width="match_parent" 6 android:layout_height="match_parent" 7 tools:context=".Add_task_2"> 8 9 <EditText 10 android:id="@+id/editTextTextPersonName2" 11 android:layout_width="wrap_content" 12 android:layout_height="wrap_content" 13 android:ems="10" 14 android:inputType="textPersonName" 15 android:text="Name" 16 tools:layout_editor_absoluteX="124dp" 17 tools:layout_editor_absoluteY="79dp" /> 18 19 <EditText 20 android:id="@+id/editTextTextPersonName3" 21 android:layout_width="wrap_content" 22 android:layout_height="wrap_content" 23 android:ems="10" 24 android:inputType="textPersonName" 25 android:text="Name" 26 tools:layout_editor_absoluteX="124dp" 27 tools:layout_editor_absoluteY="157dp" /> 28 29 <EditText 30 android:id="@+id/editTextTextPersonName" 31 android:layout_width="wrap_content" 32 android:layout_height="wrap_content" 33 android:ems="10" 34 android:inputType="textPersonName" 35 android:text="Name" 36 tools:layout_editor_absoluteX="122dp" 37 tools:layout_editor_absoluteY="239dp" /> 38 39 <com.google.android.material.textfield.TextInputLayout 40 android:id="@+id/date_label" 41 style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox" 42 android:layout_width="wrap_content" 43 android:layout_height="wrap_content" 44 android:hint="販売開始日" 45 app:layout_constraintBottom_toBottomOf="parent" 46 app:layout_constraintEnd_toEndOf="parent" 47 app:layout_constraintStart_toStartOf="parent" 48 app:layout_constraintTop_toTopOf="parent" 49 app:startIconDrawable="@android:drawable/ic_menu_my_calendar"> 50 51 <com.google.android.material.textfield.TextInputEditText 52 android:id="@+id/date" 53 android:layout_width="190dp" 54 android:layout_height="60dp" 55 android:clickable="false" 56 android:inputType="date" /> 57 </com.google.android.material.textfield.TextInputLayout> 58 59 <!-- DatePicker表示ボタン --> 60 <ImageButton 61 android:id="@+id/date_picker_actions" 62 android:layout_width="48dp" 63 android:layout_height="48dp" 64 android:layout_marginTop="4dp" 65 android:layout_marginEnd="8dp" 66 android:background="@color/white" 67 android:contentDescription="DatePicker" 68 android:src="@android:drawable/arrow_down_float" 69 app:layout_constraintBottom_toBottomOf="@id/date_label" 70 app:layout_constraintEnd_toEndOf="@id/date_label" 71 app:layout_constraintTop_toTopOf="@id/date_label" 72 app:tint="@android:color/black" /> 73 74</androidx.constraintlayout.widget.ConstraintLayout>
回答1件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2022/08/04 14:25
2022/08/06 15:19