added lesson as custom gui component

This commit is contained in:
2018-10-25 16:44:36 +02:00
parent 8741652638
commit a367865971
5 changed files with 93 additions and 90 deletions

View File

@ -20,13 +20,17 @@
*
*/
package org.mosad.seil0.projectlaogai
import android.annotation.SuppressLint
import android.annotation.TargetApi
import android.content.res.ColorStateList
import android.graphics.Color
import android.graphics.Color.*
import android.os.Build
import android.os.Bundle
import android.support.annotation.RequiresApi
import android.support.v4.app.Fragment
import android.support.v7.widget.CardView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
@ -71,34 +75,43 @@ class HomeFragment : Fragment() {
txtViewMenu2.text = "Riesen Currywurst\nCurryketchup\nGitterkartoffeln\nBlattsalat"
}
@TargetApi(Build.VERSION_CODES.O)
@RequiresApi(Build.VERSION_CODES.O)
@SuppressLint("SetTextI18n")
private fun addLessons() {
// for each lesson to display on homescreen create a cardview
val lessonCardView1 = LessonCardView(context!!, null)
val lessonCardView2 = LessonCardView(context!!, null)
val lessonCardView3 = LessonCardView(context!!, null)
val lessonCardView4 = LessonCardView(context!!, null)
val lessonCardView5 = LessonCardView(context!!, null)
val cardView = CardView(context!!)
val linLayout = LinearLayout(context)
val tv = TextView(context)
lessonCardView1.getTxtViewLesson().text = "Computernetze 1\nMayer E.\nA213"
lessonCardView1.getTxtViewTime().text = "8.00 - 9.30"
cardView.radius = 20F
cardView.cardElevation = 10F
cardView.setContentPadding(10,10,10,10)
cardView.preventCornerOverlap = true
cardView.useCompatPadding = true
lessonCardView2.getTxtViewLesson().text = "Computernetze 1\nMayer E.\nA213"
lessonCardView2.getTxtViewTime().text = "8.00 - 9.30"
linLayout.layoutParams = LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 160)
linLayout.orientation = LinearLayout.HORIZONTAL
lessonCardView3.getTxtViewLesson().text = "Computernetze 1\nMayer E.\nA213"
lessonCardView3.getTxtViewTime().text = "8.00 - 9.30"
lessonCardView4.getTxtViewLesson().text = "Computernetze 1\nMayer E.\nA213"
lessonCardView4.getTxtViewTime().text = "8.00 - 9.30"
tv.text = "test\nRaum abc"
lessonCardView5.getTxtViewLesson().text = "Computernetze 1\nMayer E.\nA213"
lessonCardView5.getTxtViewTime().text = "8.00 - 9.30"
linLayout.addView(tv)
cardView.addView(linLayout)
lessonCardView1.setBackgroundColor(Color.parseColor("#3F51B5"))
// ff00ddff
// TODO make lesson card an seperate oject
//var lessonCardView = LessonCardView(context!!, null)
linLayoutTimeTable.addView(cardView)
linLayoutTimeTable.run {
addView(lessonCardView1)
addView(lessonCardView2)
addView(lessonCardView3)
addView(lessonCardView4)
addView(lessonCardView5)
}
}
}

View File

@ -1,17 +1,53 @@
/**
* ProjectLaogai
*
* Copyright 2018 <seil0@mosad.xyz>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*/
package org.mosad.seil0.projectlaogai
import android.content.Context
import android.graphics.Color
import android.support.v7.widget.CardView
import android.util.AttributeSet
import android.view.LayoutInflater
import kotlinx.android.synthetic.main.lesson_cardview.view.*
import android.widget.TextView
class LessonCardView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) : CardView(context, attrs){
private var txtViewLesson: TextView
private var txtViewTime: TextView
class LessonCardView @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null
) : CardView(context, attrs){
init {
LayoutInflater.from(context).inflate(R.layout.lesson_cardview,this, false)
inflate(context, R.layout.lesson_cardview,this)
txtViewLesson = findViewById(R.id.txtView_Lesson)
txtViewTime = findViewById(R.id.txtView_Time)
// workaround to prevent a white border
this.setBackgroundColor(Color.parseColor("#3F51B5"))
}
fun getTxtViewLesson(): TextView {
return txtViewLesson
}
fun getTxtViewTime(): TextView {
return txtViewTime
}
}