Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import androidx.appcompat.app.AppCompatActivity
- import android.os.Bundle
- import android.view.View
- import android.widget.CalendarView
- import android.widget.EditText
- import android.widget.TextView
- import android.widget.Toast
- import androidx.core.view.isVisible
- import java.text.DateFormat
- import java.text.SimpleDateFormat
- import java.time.LocalDate
- import java.time.chrono.ChronoLocalDate
- import java.time.chrono.ChronoPeriod
- import java.time.format.DateTimeFormatter
- import java.time.temporal.ChronoUnit
- import java.util.*
- class MainActivity : AppCompatActivity() {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_main)
- val cv=findViewById<CalendarView>(R.id.calendarView)
- cv.isVisible=false
- cv.setOnDateChangeListener { calendarView, year, month, day ->
- val tv=findViewById<TextView>(R.id.textView)
- //tv.text= String.format("%d.%02d.%dг.",day,month+1,year)
- //tv.text= String.format("%d.%02d.%dг.",day,month+1,year%100)
- // Изчисляване на разлика в дати
- //val d1=LocalDate.now()
- //val d2=LocalDate.of(year,month+1,day)
- //tv.text=ChronoPeriod.between(d1,d2).toString()
- //tv.text=ChronoUnit.DAYS.between(d1,d2).toString()+" дни"
- // Активният контрол
- val curr=this.currentFocus
- // Ако контролът е EditText
- if( curr is EditText) {
- val izbor=String.format("%d.%02d.%d",day,month+1,year)
- // На активният контрол му задаваме стойност
- (curr as EditText).setText(izbor)
- cv.isVisible=false
- }
- }
- findViewById<EditText>(R.id.editTextDate).setOnFocusChangeListener { view, b ->
- cv.isVisible=true
- }
- findViewById<EditText>(R.id.editTextDate2).setOnFocusChangeListener { view, b ->
- cv.isVisible=true
- }
- }
- fun btn_dnes(view:View){
- val tv=findViewById<TextView>(R.id.textView)
- val dnes=LocalDate.now()
- //tv.text=dnes.toString()
- // Ден.име на месец.година
- //tv.text=dnes.dayOfMonth.toString()+"."+dnes.month+"."+dnes.year
- // ден.месец.година
- //tv.text=String.format("%2d.%02d.%4d",dnes.dayOfMonth,dnes.monthValue,dnes.year)
- //val frm=SimpleDateFormat("d/MM/yyyy")
- //val dnes2= Calendar.getInstance()
- //tv.text=frm.format(dnes2.time)
- //val frm=DateTimeFormatter.ofPattern("d.MM.yyyy")
- //tv.text=frm.format(dnes)
- val imena= listOf("Яну","Фев","Мар","Апр","Май","Юни","Юли","Авг","Сеп","Окт","Ное","Дек")
- //tv.text=dnes.dayOfMonth.toString()+"."+ imena[dnes.monthValue]+"."+dnes.year
- tv.text= String.format("%d.%s.%d",dnes.dayOfMonth,imena[dnes.monthValue-1],dnes.year)
- }
- fun btn_razlika(view: View) {
- val ed1=findViewById<EditText>(R.id.editTextDate)
- val ed2=findViewById<EditText>(R.id.editTextDate2)
- if( ed1.text.isEmpty() || ed2.text.isEmpty() )
- Toast.makeText(this, "Има невъведена дата", Toast.LENGTH_SHORT).show()
- else {
- val maska=DateTimeFormatter.ofPattern("d.MM.yyyy")
- val date1=LocalDate.parse(ed1.text,maska)
- val date2=LocalDate.parse(ed2.text,maska)
- val tv=findViewById<TextView>(R.id.textView)
- tv.text=ChronoUnit.DAYS.between(date1,date2).toString()
- }
- }
- fun btn_zad(view: View) {
- val tv=findViewById<TextView>(R.id.textView)
- val dnes=LocalDate.now()
- val kam=LocalDate.of(2022,4,18)
- tv.text="до "+kam.toString()+" остават "+
- ChronoUnit.DAYS.between(dnes,kam).toString()+" дни"
- }
- }
- <TextView
- android:id="@+id/textView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginStart="20dp"
- android:layout_marginTop="40dp"
- android:text="Hello World!"
- app:layout_constraintStart_toEndOf="@+id/button"
- app:layout_constraintTop_toBottomOf="@+id/button2" />
- <EditText
- android:id="@+id/editTextDate"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginStart="56dp"
- android:layout_marginTop="16dp"
- android:ems="10"
- android:inputType="date"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
- <EditText
- android:id="@+id/editTextDate2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:ems="10"
- android:inputType="date"
- app:layout_constraintStart_toStartOf="@+id/editTextDate"
- app:layout_constraintTop_toBottomOf="@+id/editTextDate" />
- <Button
- android:id="@+id/button"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="17dp"
- android:onClick="btn_zad"
- android:text="Dnes"
- app:layout_constraintStart_toStartOf="@+id/editTextDate2"
- app:layout_constraintTop_toBottomOf="@+id/editTextDate2" />
- <Button
- android:id="@+id/button2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginStart="61dp"
- android:layout_marginTop="17dp"
- android:onClick="btn_razlika"
- android:text="Razlika"
- app:layout_constraintStart_toEndOf="@+id/button"
- app:layout_constraintTop_toBottomOf="@+id/editTextDate2" />
- <CalendarView
- android:id="@+id/calendarView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginStart="30dp"
- android:layout_marginBottom="25dp"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintStart_toStartOf="parent" />
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement