- エーオーシステム コーポレートサイト
https://www.aosystem.co.jp/ - エーオーシステム プロダクトサイト
https://ao-system.net/ - レンタルサーバー
- バーチャル展示会
- ウェブカタログサービス
- 3Dグラフィック
- Android アプリ
- iOS (iPhone,iPad) アプリ
- Flutter開発
- プログラミング記録QuickAnswer
- 無料画像素材
- スカイボックス 3D SKY BOX
このページのQRコード
下記アプリの主要なソースコードを公開しています。アプリ開発の参考になれば幸いです。
画像等が別途必要ですので下記情報のみでアプリが完成するものではありません。 アプリは少しずつ機能拡張していますのでストア公開されているアプリと内容が異なる場合があります。 コードはコピーして自由にお使いいただけます。ただし著作権は放棄しておりませんので全部の再掲載はご遠慮ください。部分的に再掲載したり、改変して再掲載するのは構いません。 自身のアプリ作成の参考として個人使用・商用問わず自由にお使いいただけます。 コード記述のお手本を示すものではありません。ミニアプリですので変数名などさほど気遣いしていない部分も有りますし間違いも有るかと思いますので参考程度にお考え下さい。 他の賢者の皆様が公開されているコードを参考にした箇所も含まれます。Androidアプリ開発の熟練者が書いたコードではありません。 エンジニア向け技術情報共有サービスではありませんので説明は省いています。ご了承ください。 GitHubなどへの公開は予定しておりません。
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.kotlin.android) apply false
}
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
}
android {
namespace = "jp.aosystem.bingomachine"
compileSdk = 35
defaultConfig {
applicationId = "jp.aosystem.bingomachine"
minSdk = 21 //textToSpeech.voicesは21(Android5)から使用できる。PlaybackParams()は23(Android6)から使用できる
//旧バージョンの1.30を使用中のユーザーがAndroid5らしく、当時のバージョンはAdMobのポリシー違反となるため現バージョンにアップデートしてもらう事を目的とする。
targetSdk = 35
versionCode = 51
versionName = "1.50.1"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
}
dependencies {
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
implementation(libs.androidx.activity)
implementation(libs.androidx.constraintlayout)
implementation(libs.play.services.ads)
}
[versions]
agp = "8.7.3"
kotlin = "1.9.24"
coreKtx = "1.15.0"
appcompat = "1.7.0"
material = "1.12.0"
activity = "1.9.3"
constraintlayout = "2.2.0"
playServicesAds = "23.6.0"
[libraries]
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
material = { group = "com.google.android.material", name = "material", version.ref = "material" }
androidx-activity = { group = "androidx.activity", name = "activity", version.ref = "activity" }
androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" }
play-services-ads = { module = "com.google.android.gms:play-services-ads", version.ref = "playServicesAds" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/Theme.Bingomachine"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".CardActivity"
android:exported="false" />
<activity
android:name=".SettingActivity"
android:exported="false" />
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-0000000000000000~0000000000" />
</application>
</manifest>
package jp.aosystem.bingomachine
import android.app.Activity
import android.content.Context
import android.content.Intent
import android.content.res.Configuration
import android.graphics.Color
import android.graphics.Typeface
import android.media.MediaPlayer
import android.media.PlaybackParams
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.Handler
import android.os.LocaleList
import android.speech.tts.TextToSpeech
import android.speech.tts.UtteranceProgressListener
import android.util.DisplayMetrics
import android.view.Gravity
import android.view.ViewTreeObserver
import android.widget.*
import androidx.activity.result.ActivityResult
import androidx.activity.result.contract.ActivityResultContracts
import androidx.appcompat.app.AppCompatDelegate
import androidx.core.content.ContextCompat
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.AdSize
import com.google.android.gms.ads.AdView
import com.google.android.gms.ads.MobileAds
import java.util.*
class MainActivity : AppCompatActivity(), TextToSpeech.OnInitListener {
private lateinit var vTextStart: TextView
private lateinit var vTextSetting: TextView
private lateinit var vTextCard: TextView
private lateinit var vLayoutBase: FrameLayout
private lateinit var vVideoView: VideoView
private lateinit var vImageFirstView: ImageView
private lateinit var vTextTable1: TextView
private lateinit var vTextTable2: TextView
private lateinit var vTextTable3: TextView
private lateinit var vTextTable4: TextView
private lateinit var vTextTable5: TextView
private lateinit var vTextTable6: TextView
private lateinit var vTextTable7: TextView
private lateinit var vTextTable8: TextView
private lateinit var vTextTable9: TextView
private lateinit var vTextTable10: TextView
private lateinit var vTextTable11: TextView
private lateinit var vTextTable12: TextView
private lateinit var vTextTable13: TextView
private lateinit var vTextTable14: TextView
private lateinit var vTextTable15: TextView
private lateinit var vTextTable16: TextView
private lateinit var vTextTable17: TextView
private lateinit var vTextTable18: TextView
private lateinit var vTextTable19: TextView
private lateinit var vTextTable20: TextView
private lateinit var vTextTable21: TextView
private lateinit var vTextTable22: TextView
private lateinit var vTextTable23: TextView
private lateinit var vTextTable24: TextView
private lateinit var vTextTable25: TextView
private lateinit var vTextTable26: TextView
private lateinit var vTextTable27: TextView
private lateinit var vTextTable28: TextView
private lateinit var vTextTable29: TextView
private lateinit var vTextTable30: TextView
private lateinit var vTextTable31: TextView
private lateinit var vTextTable32: TextView
private lateinit var vTextTable33: TextView
private lateinit var vTextTable34: TextView
private lateinit var vTextTable35: TextView
private lateinit var vTextTable36: TextView
private lateinit var vTextTable37: TextView
private lateinit var vTextTable38: TextView
private lateinit var vTextTable39: TextView
private lateinit var vTextTable40: TextView
private lateinit var vTextTable41: TextView
private lateinit var vTextTable42: TextView
private lateinit var vTextTable43: TextView
private lateinit var vTextTable44: TextView
private lateinit var vTextTable45: TextView
private lateinit var vTextTable46: TextView
private lateinit var vTextTable47: TextView
private lateinit var vTextTable48: TextView
private lateinit var vTextTable49: TextView
private lateinit var vTextTable50: TextView
private lateinit var vTextTable51: TextView
private lateinit var vTextTable52: TextView
private lateinit var vTextTable53: TextView
private lateinit var vTextTable54: TextView
private lateinit var vTextTable55: TextView
private lateinit var vTextTable56: TextView
private lateinit var vTextTable57: TextView
private lateinit var vTextTable58: TextView
private lateinit var vTextTable59: TextView
private lateinit var vTextTable60: TextView
private lateinit var vTextTable61: TextView
private lateinit var vTextTable62: TextView
private lateinit var vTextTable63: TextView
private lateinit var vTextTable64: TextView
private lateinit var vTextTable65: TextView
private lateinit var vTextTable66: TextView
private lateinit var vTextTable67: TextView
private lateinit var vTextTable68: TextView
private lateinit var vTextTable69: TextView
private lateinit var vTextTable70: TextView
private lateinit var vTextTable71: TextView
private lateinit var vTextTable72: TextView
private lateinit var vTextTable73: TextView
private lateinit var vTextTable74: TextView
private lateinit var vTextTable75: TextView
private lateinit var vTextTableHistory1: TextView
private lateinit var vTextTableHistory2: TextView
private lateinit var vTextTableHistory3: TextView
private lateinit var vTextTableHistory4: TextView
private lateinit var vTextTableHistory5: TextView
private lateinit var vTextTableHistory6: TextView
private lateinit var vTextTableHistory7: TextView
private lateinit var vTextTableHistory8: TextView
private lateinit var vTextTableHistory9: TextView
private lateinit var vTextTableHistory10: TextView
private lateinit var vTextTableHistory11: TextView
private lateinit var vTextTableHistory12: TextView
private lateinit var vTextTableHistory13: TextView
private lateinit var vTextTableHistory14: TextView
private lateinit var vTextTableHistory15: TextView
private lateinit var vTextTableHistory16: TextView
private lateinit var vTextTableHistory17: TextView
private lateinit var vTextTableHistory18: TextView
private lateinit var vTextTableHistory19: TextView
private lateinit var vTextTableHistory20: TextView
private lateinit var vTextTableHistory21: TextView
private lateinit var vTextTableHistory22: TextView
private lateinit var vTextTableHistory23: TextView
private lateinit var vTextTableHistory24: TextView
private lateinit var vTextTableHistory25: TextView
private lateinit var vTextTableHistory26: TextView
private lateinit var vTextTableHistory27: TextView
private lateinit var vTextTableHistory28: TextView
private lateinit var vTextTableHistory29: TextView
private lateinit var vTextTableHistory30: TextView
private lateinit var vTextTableHistory31: TextView
private lateinit var vTextTableHistory32: TextView
private lateinit var vTextTableHistory33: TextView
private lateinit var vTextTableHistory34: TextView
private lateinit var vTextTableHistory35: TextView
private lateinit var vTextTableHistory36: TextView
private lateinit var vTextTableHistory37: TextView
private lateinit var vTextTableHistory38: TextView
private lateinit var vTextTableHistory39: TextView
private lateinit var vTextTableHistory40: TextView
private lateinit var vTextTableHistory41: TextView
private lateinit var vTextTableHistory42: TextView
private lateinit var vTextTableHistory43: TextView
private lateinit var vTextTableHistory44: TextView
private lateinit var vTextTableHistory45: TextView
private lateinit var vTextTableHistory46: TextView
private lateinit var vTextTableHistory47: TextView
private lateinit var vTextTableHistory48: TextView
private lateinit var vTextTableHistory49: TextView
private lateinit var vTextTableHistory50: TextView
private lateinit var vTextTableHistory51: TextView
private lateinit var vTextTableHistory52: TextView
private lateinit var vTextTableHistory53: TextView
private lateinit var vTextTableHistory54: TextView
private lateinit var vTextTableHistory55: TextView
private lateinit var vTextTableHistory56: TextView
private lateinit var vTextTableHistory57: TextView
private lateinit var vTextTableHistory58: TextView
private lateinit var vTextTableHistory59: TextView
private lateinit var vTextTableHistory60: TextView
private lateinit var vTextTableHistory61: TextView
private lateinit var vTextTableHistory62: TextView
private lateinit var vTextTableHistory63: TextView
private lateinit var vTextTableHistory64: TextView
private lateinit var vTextTableHistory65: TextView
private lateinit var vTextTableHistory66: TextView
private lateinit var vTextTableHistory67: TextView
private lateinit var vTextTableHistory68: TextView
private lateinit var vTextTableHistory69: TextView
private lateinit var vTextTableHistory70: TextView
private lateinit var vTextTableHistory71: TextView
private lateinit var vTextTableHistory72: TextView
private lateinit var vTextTableHistory73: TextView
private lateinit var vTextTableHistory74: TextView
private lateinit var vTextTableHistory75: TextView
private lateinit var vAdContainer: LinearLayout
//
private lateinit var textToSpeech: TextToSpeech
private var speechVoices: ArrayList<String> = arrayListOf()
private lateinit var soundSpin: MediaPlayer
//
private var ballHistory: Array<Int> = arrayOf() //履歴 0 to 74
private var ballTables: Array<TextView> = arrayOf()
private var ballTableHistories: Array<TextView> = arrayOf()
private val resourceBallImg: Int = R.drawable.ic_ball
private lateinit var ballFrameResult: FrameLayout
private lateinit var ballImageResult: ImageView
private lateinit var ballTextResult: TextView
private var baseWidth: Int = 0
private var baseHeight: Int = 0
private var boxSize: Int = 0
private var destroyFlag: Boolean = false //Activity破棄された場合など
private var busyFlag: Boolean = false //回転中
private var speechNumber: Int = 0 //数字を読み上げるか否か 0 or 1
private var speechVoice: String = "" //voice e.g. "ja-jp-x-jad-local"
private var volumeSpin: Int = 10 //0..10
private var volumeSpeech: Int = 10 //0..10
private var shortNumber: Int = 0 //短く回転
private var themeNumber: Int = 0
private var localeLanguage: String = ""
private var choiceBall: Int = 0 //0 to 74
private var textSizeTable: Int = 16
private var textSizeCard: Int = 35
//adMob
private lateinit var adView: AdView //adMob
private val adSize: AdSize
get() {
val density = resources.displayMetrics.density
var adWidthPixels = this.vAdContainer.width.toFloat()
if (adWidthPixels == 0f) {
adWidthPixels = if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) {
// APIレベル30以上
val windowMetrics = windowManager.currentWindowMetrics
windowMetrics.bounds.width().toFloat()
} else {
// APIレベル30未満
@Suppress("DEPRECATION")
val display = windowManager.defaultDisplay
val outMetrics = DisplayMetrics()
@Suppress("DEPRECATION")
display.getMetrics(outMetrics)
outMetrics.widthPixels.toFloat()
}
}
val adWidth = (adWidthPixels / density).toInt()
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth)
}
private var isAdLoaded: Boolean = false
companion object {
private const val BALL_HISTORY: String = "ballHistory"
private const val BALL_COUNT: Int = 75 //0 to 74
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
supportActionBar?.hide() //タイトルバー非表示
//
this.vTextStart = findViewById(R.id.textStart)
this.vTextSetting = findViewById(R.id.textSetting)
this.vTextCard = findViewById(R.id.textCard)
this.vLayoutBase = findViewById(R.id.layoutBase)
this.vVideoView = findViewById(R.id.videoView)
this.vImageFirstView = findViewById(R.id.imageFirstView)
//
this.vTextTable1 = findViewById(R.id.textTable1)
this.vTextTable2 = findViewById(R.id.textTable2)
this.vTextTable3 = findViewById(R.id.textTable3)
this.vTextTable4 = findViewById(R.id.textTable4)
this.vTextTable5 = findViewById(R.id.textTable5)
this.vTextTable6 = findViewById(R.id.textTable6)
this.vTextTable7 = findViewById(R.id.textTable7)
this.vTextTable8 = findViewById(R.id.textTable8)
this.vTextTable9 = findViewById(R.id.textTable9)
this.vTextTable10 = findViewById(R.id.textTable10)
this.vTextTable11 = findViewById(R.id.textTable11)
this.vTextTable12 = findViewById(R.id.textTable12)
this.vTextTable13 = findViewById(R.id.textTable13)
this.vTextTable14 = findViewById(R.id.textTable14)
this.vTextTable15 = findViewById(R.id.textTable15)
this.vTextTable16 = findViewById(R.id.textTable16)
this.vTextTable17 = findViewById(R.id.textTable17)
this.vTextTable18 = findViewById(R.id.textTable18)
this.vTextTable19 = findViewById(R.id.textTable19)
this.vTextTable20 = findViewById(R.id.textTable20)
this.vTextTable21 = findViewById(R.id.textTable21)
this.vTextTable22 = findViewById(R.id.textTable22)
this.vTextTable23 = findViewById(R.id.textTable23)
this.vTextTable24 = findViewById(R.id.textTable24)
this.vTextTable25 = findViewById(R.id.textTable25)
this.vTextTable26 = findViewById(R.id.textTable26)
this.vTextTable27 = findViewById(R.id.textTable27)
this.vTextTable28 = findViewById(R.id.textTable28)
this.vTextTable29 = findViewById(R.id.textTable29)
this.vTextTable30 = findViewById(R.id.textTable30)
this.vTextTable31 = findViewById(R.id.textTable31)
this.vTextTable32 = findViewById(R.id.textTable32)
this.vTextTable33 = findViewById(R.id.textTable33)
this.vTextTable34 = findViewById(R.id.textTable34)
this.vTextTable35 = findViewById(R.id.textTable35)
this.vTextTable36 = findViewById(R.id.textTable36)
this.vTextTable37 = findViewById(R.id.textTable37)
this.vTextTable38 = findViewById(R.id.textTable38)
this.vTextTable39 = findViewById(R.id.textTable39)
this.vTextTable40 = findViewById(R.id.textTable40)
this.vTextTable41 = findViewById(R.id.textTable41)
this.vTextTable42 = findViewById(R.id.textTable42)
this.vTextTable43 = findViewById(R.id.textTable43)
this.vTextTable44 = findViewById(R.id.textTable44)
this.vTextTable45 = findViewById(R.id.textTable45)
this.vTextTable46 = findViewById(R.id.textTable46)
this.vTextTable47 = findViewById(R.id.textTable47)
this.vTextTable48 = findViewById(R.id.textTable48)
this.vTextTable49 = findViewById(R.id.textTable49)
this.vTextTable50 = findViewById(R.id.textTable50)
this.vTextTable51 = findViewById(R.id.textTable51)
this.vTextTable52 = findViewById(R.id.textTable52)
this.vTextTable53 = findViewById(R.id.textTable53)
this.vTextTable54 = findViewById(R.id.textTable54)
this.vTextTable55 = findViewById(R.id.textTable55)
this.vTextTable56 = findViewById(R.id.textTable56)
this.vTextTable57 = findViewById(R.id.textTable57)
this.vTextTable58 = findViewById(R.id.textTable58)
this.vTextTable59 = findViewById(R.id.textTable59)
this.vTextTable60 = findViewById(R.id.textTable60)
this.vTextTable61 = findViewById(R.id.textTable61)
this.vTextTable62 = findViewById(R.id.textTable62)
this.vTextTable63 = findViewById(R.id.textTable63)
this.vTextTable64 = findViewById(R.id.textTable64)
this.vTextTable65 = findViewById(R.id.textTable65)
this.vTextTable66 = findViewById(R.id.textTable66)
this.vTextTable67 = findViewById(R.id.textTable67)
this.vTextTable68 = findViewById(R.id.textTable68)
this.vTextTable69 = findViewById(R.id.textTable69)
this.vTextTable70 = findViewById(R.id.textTable70)
this.vTextTable71 = findViewById(R.id.textTable71)
this.vTextTable72 = findViewById(R.id.textTable72)
this.vTextTable73 = findViewById(R.id.textTable73)
this.vTextTable74 = findViewById(R.id.textTable74)
this.vTextTable75 = findViewById(R.id.textTable75)
this.vTextTableHistory1 = findViewById(R.id.textTableHistory1)
this.vTextTableHistory2 = findViewById(R.id.textTableHistory2)
this.vTextTableHistory3 = findViewById(R.id.textTableHistory3)
this.vTextTableHistory4 = findViewById(R.id.textTableHistory4)
this.vTextTableHistory5 = findViewById(R.id.textTableHistory5)
this.vTextTableHistory6 = findViewById(R.id.textTableHistory6)
this.vTextTableHistory7 = findViewById(R.id.textTableHistory7)
this.vTextTableHistory8 = findViewById(R.id.textTableHistory8)
this.vTextTableHistory9 = findViewById(R.id.textTableHistory9)
this.vTextTableHistory10 = findViewById(R.id.textTableHistory10)
this.vTextTableHistory11 = findViewById(R.id.textTableHistory11)
this.vTextTableHistory12 = findViewById(R.id.textTableHistory12)
this.vTextTableHistory13 = findViewById(R.id.textTableHistory13)
this.vTextTableHistory14 = findViewById(R.id.textTableHistory14)
this.vTextTableHistory15 = findViewById(R.id.textTableHistory15)
this.vTextTableHistory16 = findViewById(R.id.textTableHistory16)
this.vTextTableHistory17 = findViewById(R.id.textTableHistory17)
this.vTextTableHistory18 = findViewById(R.id.textTableHistory18)
this.vTextTableHistory19 = findViewById(R.id.textTableHistory19)
this.vTextTableHistory20 = findViewById(R.id.textTableHistory20)
this.vTextTableHistory21 = findViewById(R.id.textTableHistory21)
this.vTextTableHistory22 = findViewById(R.id.textTableHistory22)
this.vTextTableHistory23 = findViewById(R.id.textTableHistory23)
this.vTextTableHistory24 = findViewById(R.id.textTableHistory24)
this.vTextTableHistory25 = findViewById(R.id.textTableHistory25)
this.vTextTableHistory26 = findViewById(R.id.textTableHistory26)
this.vTextTableHistory27 = findViewById(R.id.textTableHistory27)
this.vTextTableHistory28 = findViewById(R.id.textTableHistory28)
this.vTextTableHistory29 = findViewById(R.id.textTableHistory29)
this.vTextTableHistory30 = findViewById(R.id.textTableHistory30)
this.vTextTableHistory31 = findViewById(R.id.textTableHistory31)
this.vTextTableHistory32 = findViewById(R.id.textTableHistory32)
this.vTextTableHistory33 = findViewById(R.id.textTableHistory33)
this.vTextTableHistory34 = findViewById(R.id.textTableHistory34)
this.vTextTableHistory35 = findViewById(R.id.textTableHistory35)
this.vTextTableHistory36 = findViewById(R.id.textTableHistory36)
this.vTextTableHistory37 = findViewById(R.id.textTableHistory37)
this.vTextTableHistory38 = findViewById(R.id.textTableHistory38)
this.vTextTableHistory39 = findViewById(R.id.textTableHistory39)
this.vTextTableHistory40 = findViewById(R.id.textTableHistory40)
this.vTextTableHistory41 = findViewById(R.id.textTableHistory41)
this.vTextTableHistory42 = findViewById(R.id.textTableHistory42)
this.vTextTableHistory43 = findViewById(R.id.textTableHistory43)
this.vTextTableHistory44 = findViewById(R.id.textTableHistory44)
this.vTextTableHistory45 = findViewById(R.id.textTableHistory45)
this.vTextTableHistory46 = findViewById(R.id.textTableHistory46)
this.vTextTableHistory47 = findViewById(R.id.textTableHistory47)
this.vTextTableHistory48 = findViewById(R.id.textTableHistory48)
this.vTextTableHistory49 = findViewById(R.id.textTableHistory49)
this.vTextTableHistory50 = findViewById(R.id.textTableHistory50)
this.vTextTableHistory51 = findViewById(R.id.textTableHistory51)
this.vTextTableHistory52 = findViewById(R.id.textTableHistory52)
this.vTextTableHistory53 = findViewById(R.id.textTableHistory53)
this.vTextTableHistory54 = findViewById(R.id.textTableHistory54)
this.vTextTableHistory55 = findViewById(R.id.textTableHistory55)
this.vTextTableHistory56 = findViewById(R.id.textTableHistory56)
this.vTextTableHistory57 = findViewById(R.id.textTableHistory57)
this.vTextTableHistory58 = findViewById(R.id.textTableHistory58)
this.vTextTableHistory59 = findViewById(R.id.textTableHistory59)
this.vTextTableHistory60 = findViewById(R.id.textTableHistory60)
this.vTextTableHistory61 = findViewById(R.id.textTableHistory61)
this.vTextTableHistory62 = findViewById(R.id.textTableHistory62)
this.vTextTableHistory63 = findViewById(R.id.textTableHistory63)
this.vTextTableHistory64 = findViewById(R.id.textTableHistory64)
this.vTextTableHistory65 = findViewById(R.id.textTableHistory65)
this.vTextTableHistory66 = findViewById(R.id.textTableHistory66)
this.vTextTableHistory67 = findViewById(R.id.textTableHistory67)
this.vTextTableHistory68 = findViewById(R.id.textTableHistory68)
this.vTextTableHistory69 = findViewById(R.id.textTableHistory69)
this.vTextTableHistory70 = findViewById(R.id.textTableHistory70)
this.vTextTableHistory71 = findViewById(R.id.textTableHistory71)
this.vTextTableHistory72 = findViewById(R.id.textTableHistory72)
this.vTextTableHistory73 = findViewById(R.id.textTableHistory73)
this.vTextTableHistory74 = findViewById(R.id.textTableHistory74)
this.vTextTableHistory75 = findViewById(R.id.textTableHistory75)
this.vAdContainer = findViewById(R.id.adContainer)
this.vTextStart.setOnClickListener {
this.onClickStart()
}
this.vTextSetting.setOnClickListener {
this.onClickSetting()
}
this.vTextCard.setOnClickListener {
this.onClickCard()
}
//テーマ読み込みと設定
this.loadThemeNumber()
this.setTheme()
this.loadLocaleLanguage()
//設定読み出し
this.loadSpeechNumber()
this.loadSpeechVoice()
this.loadVolumeSpin()
this.loadVolumeSpeech()
this.loadShortNumber()
this.loadItemStates()
this.loadTextSizeTable()
this.loadTextSizeCard()
//読み上げ
this.textToSpeech = TextToSpeech(this, this)
this.textToSpeech.setOnUtteranceProgressListener(object : UtteranceProgressListener() {
override fun onDone(utteranceId: String) {
}
@Deprecated("Deprecated in Java")
override fun onError(p0: String?) {
}
override fun onStart(utteranceId: String) {
}
})
//sound
this.soundSpin = MediaPlayer.create(this, R.raw.karakara)
//adMob
MobileAds.initialize(this) {}
}
override fun onResume() {
super.onResume()
//準備が出来たらwidth,heightを取得して次へ進む
this.vLayoutBase.viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener {
override fun onGlobalLayout() {
this@MainActivity.vLayoutBase.viewTreeObserver.removeOnGlobalLayoutListener(this)
this@MainActivity.baseWidth = this@MainActivity.vLayoutBase.width
this@MainActivity.baseHeight = this@MainActivity.vLayoutBase.height
this@MainActivity.init()
if (isAdLoaded == false) {
this@MainActivity.loadAd()
isAdLoaded = true
}
}
})
}
private fun loadAd() {
if (!::adView.isInitialized) {
adView = AdView(this).apply {
adUnitId = ConstValue.AD_UNIT_ID
setAdSize(this@MainActivity.adSize)
}
vAdContainer.addView(adView)
}
if (!adView.isLoading) {
adView.loadAd(AdRequest.Builder().build())
}
}
override fun onInit(status: Int) {
if (status == TextToSpeech.SUCCESS) {
this.speechVoices = arrayListOf()
val vs = textToSpeech.voices
vs.forEach{v ->
this.speechVoices += v.locale.toString() + " " + v.name
}
this.speechVoices.sort()
this.setSpeechVoiceName()
}
}
override fun onPause() {
super.onPause()
if (::adView.isInitialized) {
adView.pause()
}
}
override fun onDestroy() {
this.destroyFlag = true
if (::textToSpeech.isInitialized) {
this.textToSpeech.stop()
this.textToSpeech.shutdown()
}
if (::soundSpin.isInitialized) {
this.soundSpin.stop()
this.soundSpin.release()
}
if (::adView.isInitialized) {
this.adView.destroy()
}
super.onDestroy()
}
private fun speakText(text: String) {
val textToSpeechVolumeSpeech: Float = this.volumeSpeech.toFloat() / 10
if (textToSpeechVolumeSpeech > 0) {
val params: Bundle = Bundle()
params.putFloat(TextToSpeech.Engine.KEY_PARAM_VOLUME, textToSpeechVolumeSpeech)
this.textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, params, "utteranceId")
}
}
private fun init() {
if (::ballImageResult.isInitialized) {
this.ballFrameResult.removeView(this.ballImageResult)
}
if (::ballTextResult.isInitialized) {
this.ballFrameResult.removeView(this.ballTextResult)
}
if (::ballFrameResult.isInitialized) {
this.vLayoutBase.removeView(this.ballFrameResult)
}
//
this.ballTables = arrayOf(
this.vTextTable1,
this.vTextTable2,
this.vTextTable3,
this.vTextTable4,
this.vTextTable5,
this.vTextTable6,
this.vTextTable7,
this.vTextTable8,
this.vTextTable9,
this.vTextTable10,
this.vTextTable11,
this.vTextTable12,
this.vTextTable13,
this.vTextTable14,
this.vTextTable15,
this.vTextTable16,
this.vTextTable17,
this.vTextTable18,
this.vTextTable19,
this.vTextTable20,
this.vTextTable21,
this.vTextTable22,
this.vTextTable23,
this.vTextTable24,
this.vTextTable25,
this.vTextTable26,
this.vTextTable27,
this.vTextTable28,
this.vTextTable29,
this.vTextTable30,
this.vTextTable31,
this.vTextTable32,
this.vTextTable33,
this.vTextTable34,
this.vTextTable35,
this.vTextTable36,
this.vTextTable37,
this.vTextTable38,
this.vTextTable39,
this.vTextTable40,
this.vTextTable41,
this.vTextTable42,
this.vTextTable43,
this.vTextTable44,
this.vTextTable45,
this.vTextTable46,
this.vTextTable47,
this.vTextTable48,
this.vTextTable49,
this.vTextTable50,
this.vTextTable51,
this.vTextTable52,
this.vTextTable53,
this.vTextTable54,
this.vTextTable55,
this.vTextTable56,
this.vTextTable57,
this.vTextTable58,
this.vTextTable59,
this.vTextTable60,
this.vTextTable61,
this.vTextTable62,
this.vTextTable63,
this.vTextTable64,
this.vTextTable65,
this.vTextTable66,
this.vTextTable67,
this.vTextTable68,
this.vTextTable69,
this.vTextTable70,
this.vTextTable71,
this.vTextTable72,
this.vTextTable73,
this.vTextTable74,
this.vTextTable75,
)
this.ballTableHistories = arrayOf(
this.vTextTableHistory1,
this.vTextTableHistory2,
this.vTextTableHistory3,
this.vTextTableHistory4,
this.vTextTableHistory5,
this.vTextTableHistory6,
this.vTextTableHistory7,
this.vTextTableHistory8,
this.vTextTableHistory9,
this.vTextTableHistory10,
this.vTextTableHistory11,
this.vTextTableHistory12,
this.vTextTableHistory13,
this.vTextTableHistory14,
this.vTextTableHistory15,
this.vTextTableHistory16,
this.vTextTableHistory17,
this.vTextTableHistory18,
this.vTextTableHistory19,
this.vTextTableHistory20,
this.vTextTableHistory21,
this.vTextTableHistory22,
this.vTextTableHistory23,
this.vTextTableHistory24,
this.vTextTableHistory25,
this.vTextTableHistory26,
this.vTextTableHistory27,
this.vTextTableHistory28,
this.vTextTableHistory29,
this.vTextTableHistory30,
this.vTextTableHistory31,
this.vTextTableHistory32,
this.vTextTableHistory33,
this.vTextTableHistory34,
this.vTextTableHistory35,
this.vTextTableHistory36,
this.vTextTableHistory37,
this.vTextTableHistory38,
this.vTextTableHistory39,
this.vTextTableHistory40,
this.vTextTableHistory41,
this.vTextTableHistory42,
this.vTextTableHistory43,
this.vTextTableHistory44,
this.vTextTableHistory45,
this.vTextTableHistory46,
this.vTextTableHistory47,
this.vTextTableHistory48,
this.vTextTableHistory49,
this.vTextTableHistory50,
this.vTextTableHistory51,
this.vTextTableHistory52,
this.vTextTableHistory53,
this.vTextTableHistory54,
this.vTextTableHistory55,
this.vTextTableHistory56,
this.vTextTableHistory57,
this.vTextTableHistory58,
this.vTextTableHistory59,
this.vTextTableHistory60,
this.vTextTableHistory61,
this.vTextTableHistory62,
this.vTextTableHistory63,
this.vTextTableHistory64,
this.vTextTableHistory65,
this.vTextTableHistory66,
this.vTextTableHistory67,
this.vTextTableHistory68,
this.vTextTableHistory69,
this.vTextTableHistory70,
this.vTextTableHistory71,
this.vTextTableHistory72,
this.vTextTableHistory73,
this.vTextTableHistory74,
this.vTextTableHistory75,
)
//
this.setTextSizeTable()
//
this.boxSize = minOf(this.baseWidth, this.baseHeight)
//frame layout
this.ballFrameResult = FrameLayout(this)
this.ballFrameResult.x = this.boxSize.times(0.05).toFloat()
this.ballFrameResult.y = this.boxSize.times(0.05).toFloat()
this.vLayoutBase.addView(this.ballFrameResult, this.boxSize.times(0.5).toInt(), this.boxSize.times(0.5).toInt())
//ball
this.ballImageResult = ImageView(this)
this.ballImageResult.setImageResource(resourceBallImg)
this.ballImageResult.alpha = 0F
this.ballFrameResult.addView(this.ballImageResult, this.boxSize.times(0.5).toInt(), this.boxSize.times(0.5).toInt())
//text
val scale: Float = resources.displayMetrics.density
this.ballTextResult = TextView(this)
this.ballTextResult.text = ""
this.ballTextResult.textSize = this.boxSize.times(0.35).div(scale).toFloat() //0.35
this.ballTextResult.gravity = Gravity.CENTER
this.ballTextResult.setTextColor(Color.rgb(0, 0, 0))
this.ballTextResult.typeface = Typeface.DEFAULT_BOLD
this.ballTextResult.letterSpacing = -0.05F
this.ballTextResult.alpha = 0F
this.ballFrameResult.addView(this.ballTextResult, this.boxSize.times(0.5).toInt(), this.boxSize.times(0.5).toInt())
//
this.ballHistoryDraw()
this.startButtonColor(true)
}
private fun onClickStart() {
if (this.busyFlag) {
return
}
this.busyFlag = true
this.destroyFlag = false
this.ballImageResult.animate().alpha(0F).setDuration(300).start()
this.ballTextResult.animate().alpha(0F).setDuration(300).start()
this.vImageFirstView.animate().alpha(1F).setDuration(300).start()
this.startButtonColor(false)
//ballを選ぶ
this.choiceBall = this.choiceNextBall()
if (this.choiceBall == -1) { //終了
this.ballTextResult.textSize = 24F
this.ballTextResult.typeface = Typeface.DEFAULT
this.ballTextResult.text = resources.getText(R.string.empty)
this.ballTextResult.animate().alpha(1F).setDuration(300).start()
this.startButtonColor(true)
this.busyFlag = false
return
}
//動画
if (!this.destroyFlag) {
this.vVideoView.setVideoPath("android.resource://" + this.packageName + "/" + R.raw.bingo)
this.vVideoView.setOnPreparedListener {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
it.playbackParams = it.playbackParams.apply {
speed = (this@MainActivity.shortNumber.toFloat() / 2) + 1f
}
}
this.vVideoView.start()
Handler(mainLooper).postDelayed({
this.vImageFirstView.alpha = 0F
}, 500)
}
this.vVideoView.setOnCompletionListener {
if (!this.destroyFlag) {
if (!this.isIncludeInHistory(this.choiceBall)) { //ディスプレイOFFから復帰した時に動画が開始して同じ番号が選ばれるので、同じ番号は登録しない。
this.ballHistory += this.choiceBall
}
this.saveItemStates()
this.resultTextDraw()
this.ballImageResult.animate().alpha(1F).setDuration(1000).start()
this.ballTextResult.animate().alpha(1F).setDuration(1000).start()
this.ballHistoryDraw()
this.startButtonColor(true)
this.busyFlag = false
}
}
val mediaPlayerVolumeSpin: Float = this.volumeSpin.toFloat() / 10
if (mediaPlayerVolumeSpin > 0) {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
val playbackParams: PlaybackParams = PlaybackParams()
playbackParams.speed = (this@MainActivity.shortNumber.toFloat() / 2) + 1f
this.soundSpin.playbackParams = playbackParams
}
this.soundSpin.setVolume(mediaPlayerVolumeSpin, mediaPlayerVolumeSpin)
this.soundSpin.start()
}
}
}
//次のボールを選ぶ
private fun choiceNextBall(): Int {
var candidate: Array<Int> = arrayOf() //historyに含まれないボールの配列
for (i in 0 until BALL_COUNT) {
if (!this.isIncludeInHistory(i)) {
candidate += i
}
}
if (candidate.isEmpty()) { //終了
return -1 //end
}
candidate.shuffle()
return candidate[0]
}
//履歴に含まれるか
private fun isIncludeInHistory(num: Int): Boolean {
return (num in this.ballHistory)
}
//ボールの数字
private fun resultTextDraw() {
val text: String = (this.choiceBall + 1).toString()
this.ballTextResult.text = text
if (this.speechNumber == 1) {
this.speakText(text)
}
}
//履歴を表示
private fun ballHistoryDraw() {
for (i in 0 until BALL_COUNT) {
val c: Int = if (this.isIncludeInHistory(i)) ContextCompat.getColor(this, R.color.choices) else ContextCompat.getColor(this, R.color.floor)
this.ballTables[i].setBackgroundColor(c)
}
if (this.ballHistory.isNotEmpty()) {
this.ballTables[this.ballHistory[this.ballHistory.lastIndex]].setBackgroundColor(ContextCompat.getColor(this, R.color.last_choices))
}
//
for (i in 0 until BALL_COUNT) {
if (this.ballHistory.getOrNull(i) == null) {
this.ballTableHistories[i].text = ""
this.ballTableHistories[i].setBackgroundColor(ContextCompat.getColor(this, R.color.floor))
} else {
this.ballTableHistories[i].text = String.format(Locale.getDefault(), "%d", this.ballHistory[i] + 1)
val c: Int = if (i == this.ballHistory.lastIndex) ContextCompat.getColor(this, R.color.last_choices) else ContextCompat.getColor(this, R.color.choices)
this.ballTableHistories[i].setBackgroundColor(c)
}
}
}
//start,settingのボタン色
private fun startButtonColor(onOff: Boolean) {
if (onOff) {
Handler(mainLooper).postDelayed({
this.vTextStart.animate().alpha(1F).setDuration(500).start()
this.vTextSetting.animate().alpha(1F).setDuration(500).start()
this.vTextCard.animate().alpha(1F).setDuration(500).start()
}, 500)
} else {
this.vTextStart.animate().alpha(0F).setDuration(100).start()
this.vTextSetting.animate().alpha(0F).setDuration(100).start()
this.vTextCard.animate().alpha(0F).setDuration(100).start()
}
}
//-------------------------------------------------
private fun onClickSetting() {
if (this.busyFlag) {
return
}
this.destroyFlag = true
val intent = Intent(applicationContext, SettingActivity::class.java)
intent.putExtra(ConstValue.TEXT_SIZE_TABLE, this.textSizeTable)
intent.putExtra(ConstValue.TEXT_SIZE_CARD, this.textSizeCard)
intent.putExtra(ConstValue.SPEECH_NUMBER, this.speechNumber)
intent.putExtra(ConstValue.SPEECH_VOICE, this.speechVoice)
intent.putStringArrayListExtra(ConstValue.SPEECH_VOICES, this.speechVoices)
intent.putExtra(ConstValue.VOLUME_SPIN, this.volumeSpin)
intent.putExtra(ConstValue.VOLUME_SPEECH, this.volumeSpeech)
intent.putExtra(ConstValue.SHORT_NUMBER, this.shortNumber)
intent.putExtra(ConstValue.THEME_NUMBER, this.themeNumber)
intent.putExtra(ConstValue.LOCALE_LANGUAGE, this.localeLanguage)
this.settingStartForResult.launch(intent)
}
private val settingStartForResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult ->
if (result.resultCode == Activity.RESULT_OK && result.data != null) {
val intent: Intent = result.data!!
val resetMachine: Int = intent.getIntExtra(ConstValue.RESET_MACHINE, 0)
if (resetMachine == 1) {
this.ballHistory = arrayOf()
this.saveItemStates()
}
val resetCard: Int = intent.getIntExtra(ConstValue.RESET_CARD, 0)
if (resetCard == 1) {
this.deleteCardStates()
}
val lastTextSizeTable: Int = this.textSizeTable
this.textSizeTable = intent.getIntExtra(ConstValue.TEXT_SIZE_TABLE, 16)
if (lastTextSizeTable != this.textSizeTable) {
this.saveTextSizeTable()
}
val lastTextSizeCard: Int = this.textSizeCard
this.textSizeCard = intent.getIntExtra(ConstValue.TEXT_SIZE_CARD, 35)
if (lastTextSizeCard != this.textSizeCard) {
this.saveTextSizeCard()
}
val lastSpeechNumber: Int = this.speechNumber
this.speechNumber = intent.getIntExtra(ConstValue.SPEECH_NUMBER, 1)
if (lastSpeechNumber != this.speechNumber) {
this.saveSpeechNumber()
}
val lastSpeechVoice: String = this.speechVoice
this.speechVoice = intent.getStringExtra(ConstValue.SPEECH_VOICE) ?: ""
if (lastSpeechVoice != this.speechVoice) {
this.saveSpeechVoice()
this.setSpeechVoiceName()
}
val lastVolumeSpin: Int = this.volumeSpin
this.volumeSpin = intent.getIntExtra(ConstValue.VOLUME_SPIN, 10)
if (lastVolumeSpin != this.volumeSpin) {
this.saveVolumeSpin()
}
val lastVolumeSpeech: Int = this.volumeSpeech
this.volumeSpeech = intent.getIntExtra(ConstValue.VOLUME_SPEECH, 10)
if (lastVolumeSpeech != this.volumeSpeech) {
this.saveVolumeSpeech()
}
val lastShortNumber: Int = this.shortNumber
this.shortNumber = intent.getIntExtra(ConstValue.SHORT_NUMBER, 1)
if (lastShortNumber != this.shortNumber) {
this.saveShortNumber()
}
val lastThemeNumber: Int = this.themeNumber
this.themeNumber = intent.getIntExtra(ConstValue.THEME_NUMBER, 0)
if (lastThemeNumber != this.themeNumber) {
this.saveThemeNumber()
}
val lastLocaleLanguage = this.localeLanguage
this.localeLanguage = intent.getStringExtra(ConstValue.LOCALE_LANGUAGE) ?: ""
if (this.localeLanguage != lastLocaleLanguage) {
this.saveLocaleLanguage()
}
}
recreate()
}
private fun onClickCard() {
if (this.busyFlag) {
return
}
this.destroyFlag = true
val intent = Intent(applicationContext, CardActivity::class.java)
intent.putExtra(ConstValue.TEXT_SIZE_CARD, this.textSizeCard)
intent.putExtra(ConstValue.SPEECH_VOICE, this.speechVoice)
this.cardStartForResult.launch(intent)
}
private val cardStartForResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { _: ActivityResult ->
//if (result.resultCode == Activity.RESULT_OK && result.data != null) {
//val intent: Intent = result.data!!
//}
}
//-------------------------------------------------
//履歴を保存
private fun saveItemStates() {
var bh: String = ""
if (this.ballHistory.isNotEmpty()) {
for (element in this.ballHistory) {
bh += "${element}," //0 to 74
}
}
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putString(BALL_HISTORY, bh)
apply()
}
}
//履歴を読み出し
private fun loadItemStates() {
this.ballHistory = arrayOf()
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
val bh: String = pref.getString(BALL_HISTORY, "") ?: ""
if (bh != "") {
val histories: List<String> = "${bh},".split(",")
for (element in histories) {
if (element != "") {
val n: Int = element.toInt() //0 to 74
this.ballHistory += n
}
}
}
//test
//this.ballHistory = arrayOf(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72)
}
//-------------------------------------------------
//カード情報消去
private fun deleteCardStates() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
remove(ConstValue.CARD)
apply()
}
}
//-------------------------------------------------
//数字読み上げを保存
private fun saveSpeechNumber() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.SPEECH_NUMBER, this@MainActivity.speechNumber)
apply()
}
}
//数字読み上げを読み出し
private fun loadSpeechNumber() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.speechNumber = pref.getInt(ConstValue.SPEECH_NUMBER, 1)
}
//-------------------------------------------------
//声を保存
private fun saveSpeechVoice() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putString(ConstValue.SPEECH_VOICE, this@MainActivity.speechVoice)
apply()
}
}
//声を読み出し
private fun loadSpeechVoice() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.speechVoice = pref.getString(ConstValue.SPEECH_VOICE,"").toString()
}
//-------------------------------------------------
//音量抽選機回転を保存
private fun saveVolumeSpin() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.VOLUME_SPIN, this@MainActivity.volumeSpin)
apply()
}
}
//音量抽選機回転を読み出し
private fun loadVolumeSpin() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.volumeSpin = pref.getInt(ConstValue.VOLUME_SPIN, 10)
}
//-------------------------------------------------
//音量読み上げを保存
private fun saveVolumeSpeech() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.VOLUME_SPEECH, this@MainActivity.volumeSpeech)
apply()
}
}
//音量読み上げを読み出し
private fun loadVolumeSpeech() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.volumeSpeech = pref.getInt(ConstValue.VOLUME_SPEECH, 10)
}
//-------------------------------------------------
//回転早くを保存
private fun saveShortNumber() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.SHORT_NUMBER, this@MainActivity.shortNumber)
apply()
}
}
//回転早くを読み出し
private fun loadShortNumber() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.shortNumber = pref.getInt(ConstValue.SHORT_NUMBER, 0)
}
//-------------------------------------------------
//文字サイズ 進行具合 と 履歴
private fun saveTextSizeTable() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.TEXT_SIZE_TABLE, this@MainActivity.textSizeTable)
apply()
}
}
//文字サイズ 進行具合 と 履歴
private fun loadTextSizeTable() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.textSizeTable = pref.getInt(ConstValue.TEXT_SIZE_TABLE, 16)
}
//文字サイズ 進行具合 と 履歴
private fun setTextSizeTable() {
for (element in this.ballTables) {
element.textSize = this.textSizeTable.toFloat()
}
for (element in this.ballTableHistories) {
element.textSize = this.textSizeTable.toFloat()
}
}
//-------------------------------------------------
//文字サイズ CARD
private fun saveTextSizeCard() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.TEXT_SIZE_CARD, this@MainActivity.textSizeCard)
apply()
}
}
//文字サイズ CARD
private fun loadTextSizeCard() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.textSizeCard = pref.getInt(ConstValue.TEXT_SIZE_CARD, 35)
}
//-------------------------------------------------
//テーマを保存
private fun saveThemeNumber() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putInt(ConstValue.THEME_NUMBER, this@MainActivity.themeNumber)
apply()
}
}
//テーマを読み出し
private fun loadThemeNumber() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.themeNumber = pref.getInt(ConstValue.THEME_NUMBER, 0)
}
//テーマを設定
private fun setTheme() {
when (this.themeNumber) {
0 -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
1 -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
}
}
//-------------------------------------------------
//音声設定
private fun setSpeechVoiceName() {
this.textToSpeech.voice = this.textToSpeech.voices.find { it.name == this.speechVoice } ?: this.textToSpeech.defaultVoice
}
//----------------------------------------------
//localeLanguageを保存
private fun saveLocaleLanguage() {
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putString(ConstValue.LOCALE_LANGUAGE, this@MainActivity.localeLanguage)
apply()
}
}
//localeLanguageを読み出し
private fun loadLocaleLanguage() {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
this.localeLanguage = pref.getString(ConstValue.LOCALE_LANGUAGE, "") ?: ""
}
// 言語設定
override fun attachBaseContext(base: Context) {
val pref = base.getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
val localeLanguage = pref.getString(ConstValue.LOCALE_LANGUAGE, "").orEmpty()
val isValidLocale = localeLanguage.isNotEmpty() && Locale.getAvailableLocales().any { it.language == localeLanguage }
if (isValidLocale) {
val locale = Locale(localeLanguage)
val config = Configuration(base.resources.configuration)
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { //minSdkVersion 24(Android7)
val localeList = LocaleList(locale)
LocaleList.setDefault(localeList)
config.setLocales(localeList)
} else { //minSdkVersion 17(Android4.2) 16(Android4.1)はダメ
config.setLocale(locale)
}
super.attachBaseContext(base.createConfigurationContext(config))
} else {
super.attachBaseContext(base)
}
}
//----------------------------------------------
}
package jp.aosystem.bingomachine
import android.app.Activity
import android.content.Context
import android.content.Intent
import android.content.res.Configuration
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.LocaleList
import android.view.View
import android.view.inputmethod.InputMethodManager
import android.widget.*
import androidx.appcompat.widget.SwitchCompat
import java.util.*
class SettingActivity : AppCompatActivity() {
private lateinit var vTextCancel: TextView
private lateinit var vTextApply: TextView
private lateinit var vSwitchResetMachine: SwitchCompat
private lateinit var vSwitchResetCard: SwitchCompat
private lateinit var vSwitchSpeechNumber: SwitchCompat
private lateinit var vSpinnerVoice: Spinner
private lateinit var vSeekBarVolumeSpin: SeekBar
private lateinit var vSeekBarVolumeSpeech: SeekBar
private lateinit var vSeekBarShortNumber: SeekBar
private lateinit var vEditTextSizeTable: EditText
private lateinit var vEditTextSizeCard: EditText
private lateinit var vRadioLanguageSystem: RadioButton
private lateinit var vRadioLanguageEn: RadioButton
private lateinit var vRadioLanguageBg: RadioButton
private lateinit var vRadioLanguageCs: RadioButton
private lateinit var vRadioLanguageDa: RadioButton
private lateinit var vRadioLanguageDe: RadioButton
private lateinit var vRadioLanguageEl: RadioButton
private lateinit var vRadioLanguageEs: RadioButton
private lateinit var vRadioLanguageEt: RadioButton
private lateinit var vRadioLanguageFi: RadioButton
private lateinit var vRadioLanguageFr: RadioButton
private lateinit var vRadioLanguageHu: RadioButton
private lateinit var vRadioLanguageIt: RadioButton
private lateinit var vRadioLanguageJa: RadioButton
private lateinit var vRadioLanguageLt: RadioButton
private lateinit var vRadioLanguageLv: RadioButton
private lateinit var vRadioLanguageNl: RadioButton
private lateinit var vRadioLanguagePl: RadioButton
private lateinit var vRadioLanguagePt: RadioButton
private lateinit var vRadioLanguageRo: RadioButton
private lateinit var vRadioLanguageRu: RadioButton
private lateinit var vRadioLanguageSk: RadioButton
private lateinit var vRadioLanguageSv: RadioButton
private lateinit var vRadioLanguageTh: RadioButton
private lateinit var vRadioLanguageZh: RadioButton
private lateinit var vSwitchTheme: SwitchCompat
private var spinnerSelectVoice: String = ""
private val languageRadioMap: Map<String, Int> = mapOf(
"en" to R.id.radioLanguageEn,
"bg" to R.id.radioLanguageBg,
"cs" to R.id.radioLanguageCs,
"da" to R.id.radioLanguageDa,
"de" to R.id.radioLanguageDe,
"el" to R.id.radioLanguageEl,
"es" to R.id.radioLanguageEs,
"et" to R.id.radioLanguageEt,
"fi" to R.id.radioLanguageFi,
"fr" to R.id.radioLanguageFr,
"hu" to R.id.radioLanguageHu,
"it" to R.id.radioLanguageIt,
"ja" to R.id.radioLanguageJa,
"lt" to R.id.radioLanguageLt,
"lv" to R.id.radioLanguageLv,
"nl" to R.id.radioLanguageNl,
"pl" to R.id.radioLanguagePl,
"pt" to R.id.radioLanguagePt,
"ro" to R.id.radioLanguageRo,
"ru" to R.id.radioLanguageRu,
"sk" to R.id.radioLanguageSk,
"sv" to R.id.radioLanguageSv,
"th" to R.id.radioLanguageTh,
"zh" to R.id.radioLanguageZh,
"" to R.id.radioLanguageSystem
)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_setting)
supportActionBar?.hide() //タイトルバー非表示
//
this.vTextCancel = findViewById(R.id.textCancel)
this.vTextApply = findViewById(R.id.textApply)
this.vSwitchResetMachine = findViewById(R.id.switchResetMachine)
this.vSwitchResetCard = findViewById(R.id.switchResetCard)
this.vSwitchSpeechNumber = findViewById(R.id.switchSpeechNumber)
this.vSpinnerVoice = findViewById(R.id.spinnerVoice)
this.vSeekBarVolumeSpin = findViewById(R.id.seekBarVolumeSpin)
this.vSeekBarVolumeSpeech = findViewById(R.id.seekBarVolumeSpeech)
this.vSeekBarShortNumber = findViewById(R.id.seekBarShortNumber)
this.vEditTextSizeTable = findViewById(R.id.editTextSizeTable)
this.vEditTextSizeCard = findViewById(R.id.editTextSizeCard)
this.vRadioLanguageSystem = findViewById(R.id.radioLanguageSystem)
this.vRadioLanguageEn = findViewById(R.id.radioLanguageEn)
this.vRadioLanguageBg = findViewById(R.id.radioLanguageBg)
this.vRadioLanguageCs = findViewById(R.id.radioLanguageCs)
this.vRadioLanguageDa = findViewById(R.id.radioLanguageDa)
this.vRadioLanguageDe = findViewById(R.id.radioLanguageDe)
this.vRadioLanguageEl = findViewById(R.id.radioLanguageEl)
this.vRadioLanguageEs = findViewById(R.id.radioLanguageEs)
this.vRadioLanguageEt = findViewById(R.id.radioLanguageEt)
this.vRadioLanguageFi = findViewById(R.id.radioLanguageFi)
this.vRadioLanguageFr = findViewById(R.id.radioLanguageFr)
this.vRadioLanguageHu = findViewById(R.id.radioLanguageHu)
this.vRadioLanguageIt = findViewById(R.id.radioLanguageIt)
this.vRadioLanguageJa = findViewById(R.id.radioLanguageJa)
this.vRadioLanguageLt = findViewById(R.id.radioLanguageLt)
this.vRadioLanguageLv = findViewById(R.id.radioLanguageLv)
this.vRadioLanguageNl = findViewById(R.id.radioLanguageNl)
this.vRadioLanguagePl = findViewById(R.id.radioLanguagePl)
this.vRadioLanguagePt = findViewById(R.id.radioLanguagePt)
this.vRadioLanguageRo = findViewById(R.id.radioLanguageRo)
this.vRadioLanguageRu = findViewById(R.id.radioLanguageRu)
this.vRadioLanguageSk = findViewById(R.id.radioLanguageSk)
this.vRadioLanguageSv = findViewById(R.id.radioLanguageSv)
this.vRadioLanguageTh = findViewById(R.id.radioLanguageTh)
this.vRadioLanguageZh = findViewById(R.id.radioLanguageZh)
this.vSwitchTheme = findViewById(R.id.switchTheme)
// データ受け取りとUIの初期化
this.setupUIFromIntent()
//イベントリスナー
this.vTextCancel.setOnClickListener { this.onClickCancel() }
this.vTextApply.setOnClickListener { this.onClickApply() }
//背景タッチでキーボードを隠す
this.setKeyboardHidingOnFocusLost()
}
private fun setupUIFromIntent() {
this.vSwitchResetMachine.isChecked = false
this.vSwitchResetCard.isChecked = false
val intent = this.intent
val textSizeTable: Int = intent.getIntExtra(ConstValue.TEXT_SIZE_TABLE,16)
this.vEditTextSizeTable.setText(String.format(Locale.getDefault(), "%d", textSizeTable))
val textSizeCard: Int = intent.getIntExtra(ConstValue.TEXT_SIZE_CARD,35)
this.vEditTextSizeCard.setText(String.format(Locale.getDefault(), "%d", textSizeCard))
val speechNumber: Int = intent.getIntExtra(ConstValue.SPEECH_NUMBER,0)
this.vSwitchSpeechNumber.isChecked = speechNumber != 0
val volumeSpin: Int = intent.getIntExtra(ConstValue.VOLUME_SPIN,0)
this.vSeekBarVolumeSpin.progress = volumeSpin
val volumeSpeech: Int = intent.getIntExtra(ConstValue.VOLUME_SPEECH,0)
this.vSeekBarVolumeSpeech.progress = volumeSpeech
val shortNumber: Int = intent.getIntExtra(ConstValue.SHORT_NUMBER,0)
this.vSeekBarShortNumber.progress = shortNumber
val themeNumber: Int = intent.getIntExtra(ConstValue.THEME_NUMBER,0)
this.vSwitchTheme.isChecked = themeNumber != 0
val localeLanguage = intent.getStringExtra(ConstValue.LOCALE_LANGUAGE).orEmpty()
languageRadioMap[localeLanguage]?.let { radioId ->
findViewById<RadioButton>(radioId).isChecked = true
}
val speechVoice = intent.getStringExtra(ConstValue.SPEECH_VOICE).orEmpty()
val speechVoices = intent.getStringArrayListExtra(ConstValue.SPEECH_VOICES) ?: arrayListOf()
this.setupSpinnerVoice(speechVoice, speechVoices)
}
private fun setupSpinnerVoice(speechVoice: String, speechVoices: ArrayList<String>) {
val adapter = ArrayAdapter(this, android.R.layout.simple_spinner_item, speechVoices)
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
vSpinnerVoice.adapter = adapter
// スピナー選択イベント
vSpinnerVoice.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
val selectedValue = parent?.getItemAtPosition(position) as String
spinnerSelectVoice = selectedValue.split(" ").getOrNull(1).orEmpty()
}
override fun onNothingSelected(parent: AdapterView<*>?) {}
}
// 初期選択を設定
val initialIndex = speechVoices.indexOfFirst { it.contains(speechVoice) }
if (initialIndex >= 0) {
vSpinnerVoice.setSelection(initialIndex)
}
}
//背景タッチでテキストエリアからフォーカスを外してキーボードを隠す
private fun setKeyboardHidingOnFocusLost() {
val editTexts = listOf(
vEditTextSizeTable,
vEditTextSizeCard,
)
val inputMethodManager = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
editTexts.forEach { editText ->
editText.setOnFocusChangeListener { _, hasFocus ->
if (!hasFocus) {
inputMethodManager.hideSoftInputFromWindow(editText.windowToken, InputMethodManager.HIDE_NOT_ALWAYS)
}
}
}
}
private fun onClickApply() {
val resetMachine: Int = if (this.vSwitchResetMachine.isChecked) 1 else 0
val resetCard: Int = if (this.vSwitchResetCard.isChecked) 1 else 0
var textSizeTable: Int = this.vEditTextSizeTable.text.toString().toIntOrNull() ?: 16
if (textSizeTable < 10) {
textSizeTable = 10
} else if (textSizeTable > 200) {
textSizeTable = 200
}
var textSizeCard: Int = this.vEditTextSizeCard.text.toString().toIntOrNull() ?: 35
if (textSizeCard < 10) {
textSizeCard = 10
} else if (textSizeCard > 200) {
textSizeCard = 200
}
val speechNumber: Int = if (this.vSwitchSpeechNumber.isChecked) 1 else 0
val speechVoice: String = this.spinnerSelectVoice
val volumeSpin: Int = this.vSeekBarVolumeSpin.progress
val volumeSpeech: Int = this.vSeekBarVolumeSpeech.progress
val shortNumber: Int = this.vSeekBarShortNumber.progress
val themeNumber: Int = if (this.vSwitchTheme.isChecked) 1 else 0
val localeLanguage = languageRadioMap.entries.find {
findViewById<RadioButton>(it.value).isChecked
}?.key.orEmpty()
val intent = Intent().apply {
putExtra(ConstValue.RESET_MACHINE, resetMachine)
putExtra(ConstValue.RESET_CARD, resetCard)
putExtra(ConstValue.TEXT_SIZE_TABLE, textSizeTable)
putExtra(ConstValue.TEXT_SIZE_CARD, textSizeCard)
putExtra(ConstValue.SPEECH_NUMBER, speechNumber)
putExtra(ConstValue.SPEECH_VOICE, speechVoice)
putExtra(ConstValue.VOLUME_SPIN, volumeSpin)
putExtra(ConstValue.VOLUME_SPEECH, volumeSpeech)
putExtra(ConstValue.SHORT_NUMBER, shortNumber)
putExtra(ConstValue.THEME_NUMBER, themeNumber)
putExtra(ConstValue.LOCALE_LANGUAGE, localeLanguage)
}
setResult(Activity.RESULT_OK, intent)
finish()
}
private fun onClickCancel() {
val intent = Intent()
setResult(Activity.RESULT_CANCELED, intent)
finish()
}
//--------------------------------------------------
// 言語設定
override fun attachBaseContext(base: Context) {
val pref = base.getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
val localeLanguage = pref.getString(ConstValue.LOCALE_LANGUAGE, "").orEmpty()
val isValidLocale = localeLanguage.isNotEmpty() && Locale.getAvailableLocales().any { it.language == localeLanguage }
if (isValidLocale) {
val locale = Locale(localeLanguage)
val config = Configuration(base.resources.configuration)
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { //minSdkVersion 24(Android7)
val localeList = LocaleList(locale)
LocaleList.setDefault(localeList)
config.setLocales(localeList)
} else { //minSdkVersion 17(Android4.2) 16(Android4.1)はダメ
config.setLocale(locale)
}
super.attachBaseContext(base.createConfigurationContext(config))
} else {
super.attachBaseContext(base)
}
}
//--------------------------------------------------
}
package jp.aosystem.bingomachine
import android.app.Activity
import android.content.Context
import android.content.Intent
import android.content.res.Configuration
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.LocaleList
import android.speech.tts.TextToSpeech
import android.speech.tts.UtteranceProgressListener
import android.util.DisplayMetrics
import android.widget.EditText
import android.widget.LinearLayout
import android.widget.TextView
import androidx.core.content.ContextCompat
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.AdSize
import com.google.android.gms.ads.AdView
import com.google.android.gms.ads.MobileAds
import java.util.*
class CardActivity : AppCompatActivity(), TextToSpeech.OnInitListener {
private lateinit var vTextCancel: TextView
private lateinit var vTextCard1: TextView
private lateinit var vTextCard2: TextView
private lateinit var vTextCard3: TextView
private lateinit var vTextCard4: TextView
private lateinit var vTextCard5: TextView
private lateinit var vTextCard6: TextView
private lateinit var vTextCard7: TextView
private lateinit var vTextCard8: TextView
private lateinit var vTextCard9: TextView
private lateinit var vTextCard10: TextView
private lateinit var vTextCard11: TextView
private lateinit var vTextCard12: TextView
private lateinit var vTextCard13: TextView
private lateinit var vTextCard14: TextView
private lateinit var vTextCard15: TextView
private lateinit var vTextCard16: TextView
private lateinit var vTextCard17: TextView
private lateinit var vTextCard18: TextView
private lateinit var vTextCard19: TextView
private lateinit var vTextCard20: TextView
private lateinit var vTextCard21: TextView
private lateinit var vTextCard22: TextView
private lateinit var vTextCard23: TextView
private lateinit var vTextCard24: TextView
private lateinit var vTextCard25: TextView
private lateinit var vEditTextFree1: EditText
private lateinit var vTextViewFree1: TextView
private lateinit var vEditTextFree2: EditText
private lateinit var vTextViewFree2: TextView
private lateinit var vAdContainer: LinearLayout
//
//adMob
private lateinit var adView: AdView //adMob
private val adSize: AdSize
get() {
val density = resources.displayMetrics.density
var adWidthPixels = this.vAdContainer.width.toFloat()
if (adWidthPixels == 0f) {
adWidthPixels = if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) {
// APIレベル30以上
val windowMetrics = windowManager.currentWindowMetrics
windowMetrics.bounds.width().toFloat()
} else {
// APIレベル30未満
@Suppress("DEPRECATION")
val display = windowManager.defaultDisplay
val outMetrics = DisplayMetrics()
@Suppress("DEPRECATION")
display.getMetrics(outMetrics)
outMetrics.widthPixels.toFloat()
}
}
val adWidth = (adWidthPixels / density).toInt()
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth)
}
private var isAdLoaded: Boolean = false
private lateinit var textToSpeech: TextToSpeech
private var speechVoice: String = "" //voice e.g. "ja-jp-x-jad-local"
//
private var cardNumberViews: Array<TextView> = arrayOf()
data class Box (
var num: Int,
var open: Boolean,
)
private var boxes: Array<Array<Box>> = arrayOf(
arrayOf(Box(0,false),Box(0,false),Box(0,false),Box(0,false),Box(0,false)),
arrayOf(Box(0,false),Box(0,false),Box(0,false),Box(0,false),Box(0,false)),
arrayOf(Box(0,false),Box(0,false),Box(0,false),Box(0,false),Box(0,false)),
arrayOf(Box(0,false),Box(0,false),Box(0,false),Box(0,false),Box(0,false)),
arrayOf(Box(0,false),Box(0,false),Box(0,false),Box(0,false),Box(0,false)),
)
private var colorBackOpen: Int = 0
private var colorBackClose: Int = 0
private var colorForeOpen: Int = 0
private var colorForeClose: Int = 0
private var colorForeBingo: Int = 0
private var textSizeCard: Int = 30
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_card)
supportActionBar?.hide() //タイトルバー非表示
//
this.vTextCancel = findViewById(R.id.textCancel)
this.vTextCard1 = findViewById(R.id.textCard1)
this.vTextCard2 = findViewById(R.id.textCard2)
this.vTextCard3 = findViewById(R.id.textCard3)
this.vTextCard4 = findViewById(R.id.textCard4)
this.vTextCard5 = findViewById(R.id.textCard5)
this.vTextCard6 = findViewById(R.id.textCard6)
this.vTextCard7 = findViewById(R.id.textCard7)
this.vTextCard8 = findViewById(R.id.textCard8)
this.vTextCard9 = findViewById(R.id.textCard9)
this.vTextCard10 = findViewById(R.id.textCard10)
this.vTextCard11 = findViewById(R.id.textCard11)
this.vTextCard12 = findViewById(R.id.textCard12)
this.vTextCard13 = findViewById(R.id.textCard13)
this.vTextCard14 = findViewById(R.id.textCard14)
this.vTextCard15 = findViewById(R.id.textCard15)
this.vTextCard16 = findViewById(R.id.textCard16)
this.vTextCard17 = findViewById(R.id.textCard17)
this.vTextCard18 = findViewById(R.id.textCard18)
this.vTextCard19 = findViewById(R.id.textCard19)
this.vTextCard20 = findViewById(R.id.textCard20)
this.vTextCard21 = findViewById(R.id.textCard21)
this.vTextCard22 = findViewById(R.id.textCard22)
this.vTextCard23 = findViewById(R.id.textCard23)
this.vTextCard24 = findViewById(R.id.textCard24)
this.vTextCard25 = findViewById(R.id.textCard25)
this.vEditTextFree1 = findViewById<EditText>(R.id.editTextFree1)
this.vTextViewFree1 = findViewById(R.id.textViewFree1)
this.vEditTextFree2 = findViewById<EditText>(R.id.editTextFree2)
this.vTextViewFree2 = findViewById(R.id.textViewFree2)
this.vAdContainer = findViewById(R.id.adContainer)
this.vTextCancel.setOnClickListener { this.onClickCancel() }
this.vTextCard1.setOnClickListener { this.onClickBox1() }
this.vTextCard2.setOnClickListener { this.onClickBox2() }
this.vTextCard3.setOnClickListener { this.onClickBox3() }
this.vTextCard4.setOnClickListener { this.onClickBox4() }
this.vTextCard5.setOnClickListener { this.onClickBox5() }
this.vTextCard6.setOnClickListener { this.onClickBox6() }
this.vTextCard7.setOnClickListener { this.onClickBox7() }
this.vTextCard8.setOnClickListener { this.onClickBox8() }
this.vTextCard9.setOnClickListener { this.onClickBox9() }
this.vTextCard10.setOnClickListener { this.onClickBox10() }
this.vTextCard11.setOnClickListener { this.onClickBox11() }
this.vTextCard12.setOnClickListener { this.onClickBox12() }
this.vTextCard14.setOnClickListener { this.onClickBox14() }
this.vTextCard15.setOnClickListener { this.onClickBox15() }
this.vTextCard16.setOnClickListener { this.onClickBox16() }
this.vTextCard17.setOnClickListener { this.onClickBox17() }
this.vTextCard18.setOnClickListener { this.onClickBox18() }
this.vTextCard19.setOnClickListener { this.onClickBox19() }
this.vTextCard20.setOnClickListener { this.onClickBox20() }
this.vTextCard21.setOnClickListener { this.onClickBox21() }
this.vTextCard22.setOnClickListener { this.onClickBox22() }
this.vTextCard23.setOnClickListener { this.onClickBox23() }
this.vTextCard24.setOnClickListener { this.onClickBox24() }
this.vTextCard25.setOnClickListener { this.onClickBox25() }
this.vTextViewFree1.setOnClickListener { this.speakText(this.vEditTextFree1.text.toString()) }
this.vTextViewFree2.setOnClickListener { this.speakText(this.vEditTextFree2.text.toString()) }
//データ受け取り
val intent = this.intent
this.textSizeCard = intent.getIntExtra(ConstValue.TEXT_SIZE_CARD,30)
this.speechVoice = intent.getStringExtra(ConstValue.SPEECH_VOICE).toString()
//読み上げ
this.textToSpeech = TextToSpeech(this, this)
this.textToSpeech.setOnUtteranceProgressListener(object : UtteranceProgressListener() {
override fun onDone(utteranceId: String) {
}
@Deprecated("Deprecated in Java")
override fun onError(p0: String?) {
}
override fun onStart(utteranceId: String) {
}
})
//adMob
MobileAds.initialize(this) {}
}
override fun onInit(status: Int) {
if (status == TextToSpeech.SUCCESS) {
this.setSpeechVoiceName()
}
}
private fun onClickCancel() {
val intent = Intent()
setResult(Activity.RESULT_CANCELED, intent)
finish()
}
override fun onResume() {
super.onResume()
if (isAdLoaded == false) {
this@CardActivity.loadAd()
isAdLoaded = true
}
this.init()
}
override fun onPause() {
super.onPause()
if (::adView.isInitialized) {
adView.pause()
}
}
override fun onDestroy() {
super.onDestroy()
if (::textToSpeech.isInitialized) {
textToSpeech.stop()
textToSpeech.shutdown()
}
if (::adView.isInitialized) {
adView.destroy()
}
}
private fun loadAd() {
if (!::adView.isInitialized) {
adView = AdView(this).apply {
adUnitId = ConstValue.AD_UNIT_ID
setAdSize(this@CardActivity.adSize)
}
vAdContainer.addView(adView)
}
if (!adView.isLoading) {
adView.loadAd(AdRequest.Builder().build())
}
}
private fun init() {
this.cardNumberViews = arrayOf(
this.vTextCard1,
this.vTextCard2,
this.vTextCard3,
this.vTextCard4,
this.vTextCard5,
this.vTextCard6,
this.vTextCard7,
this.vTextCard8,
this.vTextCard9,
this.vTextCard10,
this.vTextCard11,
this.vTextCard12,
this.vTextCard13,
this.vTextCard14,
this.vTextCard15,
this.vTextCard16,
this.vTextCard17,
this.vTextCard18,
this.vTextCard19,
this.vTextCard20,
this.vTextCard21,
this.vTextCard22,
this.vTextCard23,
this.vTextCard24,
this.vTextCard25,
)
this.colorBackOpen = ContextCompat.getColor(this, R.color.card_open_bg)
this.colorBackClose = ContextCompat.getColor(this, R.color.card_close_bg)
this.colorForeOpen = ContextCompat.getColor(this, R.color.white)
this.colorForeClose = ContextCompat.getColor(this, R.color.black)
this.colorForeBingo = ContextCompat.getColor(this, R.color.yellow)
if (!this.loadCardStates()) {
this.newCard()
}
this.drawCard()
this.boxColor()
}
private fun newCard() {
var num: Array<Int>
for (x in 0 until 5) {
num = arrayOf()
for (i in 1..15) {
num += i + 15.times(x)
}
num.shuffle()
for (i in 0 until 5) {
this.boxes[x][i].num = num[i]
this.boxes[x][i].open = false
}
}
}
private fun drawCard() {
for (x in 0 until 5) {
for (y in 0 until 5) {
this.cardNumberViews[x.times(5) + y].text = String.format(Locale.getDefault(), "%d", this.boxes[x][y].num)
var bc: Int = this.colorBackClose
var tc: Int = this.colorForeClose
if (this.boxes[x][y].open) {
bc = this.colorBackOpen
tc = this.colorForeOpen
}
this.cardNumberViews[x.times(5) + y].setBackgroundColor(bc)
this.cardNumberViews[x.times(5) + y].setTextColor(tc)
this.cardNumberViews[x.times(5) + y].textSize = this.textSizeCard.toFloat()
}
}
this.boxes[2][2].open = true
this.cardNumberViews[12].text = "F"
this.cardNumberViews[12].setBackgroundColor(this.colorBackOpen)
this.cardNumberViews[12].setTextColor(this.colorForeOpen)
}
private fun onClickBox1() {
this.boxToggle(0, 0)
}
private fun onClickBox2() {
this.boxToggle(0, 1)
}
private fun onClickBox3() {
this.boxToggle(0, 2)
}
private fun onClickBox4() {
this.boxToggle(0, 3)
}
private fun onClickBox5() {
this.boxToggle(0, 4)
}
private fun onClickBox6() {
this.boxToggle(1, 0)
}
private fun onClickBox7() {
this.boxToggle(1, 1)
}
private fun onClickBox8() {
this.boxToggle(1, 2)
}
private fun onClickBox9() {
this.boxToggle(1, 3)
}
private fun onClickBox10() {
this.boxToggle(1, 4)
}
private fun onClickBox11() {
this.boxToggle(2, 0)
}
private fun onClickBox12() {
this.boxToggle(2, 1)
}
private fun onClickBox14() {
this.boxToggle(2, 3)
}
private fun onClickBox15() {
this.boxToggle(2, 4)
}
private fun onClickBox16() {
this.boxToggle(3, 0)
}
private fun onClickBox17() {
this.boxToggle(3, 1)
}
private fun onClickBox18() {
this.boxToggle(3, 2)
}
private fun onClickBox19() {
this.boxToggle(3, 3)
}
private fun onClickBox20() {
this.boxToggle(3, 4)
}
private fun onClickBox21() {
this.boxToggle(4, 0)
}
private fun onClickBox22() {
this.boxToggle(4, 1)
}
private fun onClickBox23() {
this.boxToggle(4, 2)
}
private fun onClickBox24() {
this.boxToggle(4, 3)
}
private fun onClickBox25() {
this.boxToggle(4, 4)
}
private fun boxToggle(x: Int, y: Int) {
this.boxes[x][y].open = !this.boxes[x][y].open
this.saveCardStates()
this.boxColor()
}
private fun boxColor() {
for (x in 0 until 5) {
for (y in 0 until 5) {
if (this.boxes[x][y].open) {
this.cardNumberViews[x.times(5) + y].setBackgroundColor(this.colorBackOpen)
this.cardNumberViews[x.times(5) + y].setTextColor(this.colorForeOpen)
} else {
this.cardNumberViews[x.times(5) + y].setBackgroundColor(this.colorBackClose)
this.cardNumberViews[x.times(5) + y].setTextColor(this.colorForeClose)
}
}
}
//縦が揃っていたらBINGOマーク
for (x in 0 until 5) {
var bingoFlag: Boolean = true
for (y in 0 until 5) {
if (!this.boxes[x][y].open) {
bingoFlag = false
break
}
}
if (bingoFlag) {
for (y in 0 until 5) {
this.cardNumberViews[x.times(5) + y].setTextColor(this.colorForeBingo)
}
}
}
//横が揃っていたらBINGOマーク
for (y in 0 until 5) {
var bingoFlag: Boolean = true
for (x in 0 until 5) {
if (!this.boxes[x][y].open) {
bingoFlag = false
break
}
}
if (bingoFlag) {
for (x in 0 until 5) {
this.cardNumberViews[x.times(5) + y].setTextColor(this.colorForeBingo)
}
}
}
//斜めが揃っていたらBINGOマーク
if (this.boxes[0][0].open && this.boxes[1][1].open && this.boxes[3][3].open && this.boxes[4][4].open) {
this.cardNumberViews[0 + 0].setTextColor(this.colorForeBingo)
this.cardNumberViews[5 + 1].setTextColor(this.colorForeBingo)
this.cardNumberViews[10 + 2].setTextColor(this.colorForeBingo)
this.cardNumberViews[15 + 3].setTextColor(this.colorForeBingo)
this.cardNumberViews[20 + 4].setTextColor(this.colorForeBingo)
}
//斜めが揃っていたらBINGOマーク
if (this.boxes[0][4].open && this.boxes[1][3].open && this.boxes[3][1].open && this.boxes[4][0].open) {
this.cardNumberViews[0 + 4].setTextColor(this.colorForeBingo)
this.cardNumberViews[5 + 3].setTextColor(this.colorForeBingo)
this.cardNumberViews[10 + 2].setTextColor(this.colorForeBingo)
this.cardNumberViews[15 + 1].setTextColor(this.colorForeBingo)
this.cardNumberViews[20 + 0].setTextColor(this.colorForeBingo)
}
}
//-------------------------------------------------
private fun speakText(text: String) {
textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, null, "utteranceId")
}
//音声設定
private fun setSpeechVoiceName() {
this.textToSpeech.voice = this.textToSpeech.voices.find { it.name == this.speechVoice } ?: this.textToSpeech.defaultVoice
}
//-------------------------------------------------
//履歴を保存
private fun saveCardStates() {
var bx: String = ""
for (x in 0 until 5) {
for (y in 0 until 5) {
bx += "${this.boxes[x][y].num}:${this.boxes[x][y].open},"
}
}
getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE).edit().apply {
putString(ConstValue.CARD, bx)
apply()
}
}
//履歴を読み出し
private fun loadCardStates(): Boolean {
val pref = getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
val bx: String = pref.getString(ConstValue.CARD, "") ?: ""
if (bx != "") {
val boxList: List<String> = "${bx},".split(",")
var c: Int = 0
for (x in 0 until 5) {
for (y in 0 until 5) {
val box: List<String> = "${boxList[c]}:".split(":")
val n: Int = box[0].toInt() //0 to 74
val b: Boolean = (box[1] == "true")
this.boxes[x][y].num = n
this.boxes[x][y].open= b
c += 1
}
}
return true
}
return false
}
//-------------------------------------------------
// 言語設定
override fun attachBaseContext(base: Context) {
val pref = base.getSharedPreferences(ConstValue.SETTINGS, Context.MODE_PRIVATE)
val localeLanguage = pref.getString(ConstValue.LOCALE_LANGUAGE, "").orEmpty()
val isValidLocale = localeLanguage.isNotEmpty() && Locale.getAvailableLocales().any { it.language == localeLanguage }
if (isValidLocale) {
val locale = Locale(localeLanguage)
val config = Configuration(base.resources.configuration)
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { //minSdkVersion 24(Android7)
val localeList = LocaleList(locale)
LocaleList.setDefault(localeList)
config.setLocales(localeList)
} else { //minSdkVersion 17(Android4.2) 16(Android4.1)はダメ
config.setLocale(locale)
}
super.attachBaseContext(base.createConfigurationContext(config))
} else {
super.attachBaseContext(base)
}
}
//--------------------------------------------------
}
package jp.aosystem.bingomachine
object ConstValue {
internal const val AD_UNIT_ID: String = "ca-app-pub-0000000000000000/0000000000"
internal const val SETTINGS: String = "settings"
internal const val RESET_MACHINE: String = "resetMachine"
internal const val RESET_CARD: String = "resetCard"
internal const val SPEECH_NUMBER: String = "speechNumber"
internal const val SPEECH_VOICE: String = "speechVoice"
internal const val SPEECH_VOICES: String = "speechVoices"
internal const val VOLUME_SPIN: String = "volumeSpin"
internal const val VOLUME_SPEECH: String = "volumeSpeech"
internal const val SHORT_NUMBER: String = "shortNumber"
internal const val THEME_NUMBER: String = "themeNumber"
internal const val LOCALE_LANGUAGE: String = "localeLanguage"
internal const val CARD: String = "card"
internal const val TEXT_SIZE_TABLE: String = "textSizeTable"
internal const val TEXT_SIZE_CARD: String = "textSizeCard"
}
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/floor"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="1dp"
android:layout_marginStart="1dp"
android:layout_marginEnd="1dp"
android:orientation="horizontal">
<TextView
android:id="@+id/textSetting"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/main_setting_bg"
android:gravity="center"
android:text="@string/setting" />
<TextView
android:id="@+id/textCard"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginStart="1dp"
android:layout_weight="1"
android:background="@color/main_card_bg"
android:gravity="center"
android:text="@string/card" />
</LinearLayout>
<FrameLayout
android:id="@+id/layoutBase"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<VideoView
android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ImageView
android:id="@+id/imageFirstView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
app:srcCompat="@drawable/first_frame" />
</FrameLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginEnd="1dp"
android:orientation="horizontal">
<TextView
android:id="@+id/textStart"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/main_start_bg"
android:gravity="center"
android:minHeight="96dp"
android:text="@string/start" />
</LinearLayout>
<TextView
android:id="@+id/textViewProgress"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:gravity="center"
android:text="@string/progress" />
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:layout_marginRight="20dp"
android:background="#00C853">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/main_bingo_bg"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table_b" />
<TextView
android:id="@+id/textTableI"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/main_bingo_bg"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table_i" />
<TextView
android:id="@+id/textTableN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/main_bingo_bg"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table_n" />
<TextView
android:id="@+id/textTableG"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/main_bingo_bg"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table_g" />
<TextView
android:id="@+id/textTableO"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/main_bingo_bg"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table_o" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table1" />
<TextView
android:id="@+id/textTable16"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table16" />
<TextView
android:id="@+id/textTable31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table31" />
<TextView
android:id="@+id/textTable46"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table46" />
<TextView
android:id="@+id/textTable61"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table61" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table2" />
<TextView
android:id="@+id/textTable17"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table17" />
<TextView
android:id="@+id/textTable32"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table32" />
<TextView
android:id="@+id/textTable47"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table47" />
<TextView
android:id="@+id/textTable62"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table62" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table3" />
<TextView
android:id="@+id/textTable18"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table18" />
<TextView
android:id="@+id/textTable33"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table33" />
<TextView
android:id="@+id/textTable48"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table48" />
<TextView
android:id="@+id/textTable63"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table63" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table4" />
<TextView
android:id="@+id/textTable19"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table19" />
<TextView
android:id="@+id/textTable34"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table34" />
<TextView
android:id="@+id/textTable49"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table49" />
<TextView
android:id="@+id/textTable64"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table64" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table5" />
<TextView
android:id="@+id/textTable20"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table20" />
<TextView
android:id="@+id/textTable35"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table35" />
<TextView
android:id="@+id/textTable50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table50" />
<TextView
android:id="@+id/textTable65"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table65" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table6" />
<TextView
android:id="@+id/textTable21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table21" />
<TextView
android:id="@+id/textTable36"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table36" />
<TextView
android:id="@+id/textTable51"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table51" />
<TextView
android:id="@+id/textTable66"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table66" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table7" />
<TextView
android:id="@+id/textTable22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table22" />
<TextView
android:id="@+id/textTable37"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table37" />
<TextView
android:id="@+id/textTable52"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table52" />
<TextView
android:id="@+id/textTable67"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table67" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table8" />
<TextView
android:id="@+id/textTable23"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table23" />
<TextView
android:id="@+id/textTable38"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table38" />
<TextView
android:id="@+id/textTable53"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table53" />
<TextView
android:id="@+id/textTable68"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table68" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table9" />
<TextView
android:id="@+id/textTable24"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table24" />
<TextView
android:id="@+id/textTable39"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table39" />
<TextView
android:id="@+id/textTable54"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table54" />
<TextView
android:id="@+id/textTable69"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table69" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table10" />
<TextView
android:id="@+id/textTable25"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table25" />
<TextView
android:id="@+id/textTable40"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table40" />
<TextView
android:id="@+id/textTable55"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table55" />
<TextView
android:id="@+id/textTable70"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table70" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table11" />
<TextView
android:id="@+id/textTable26"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table26" />
<TextView
android:id="@+id/textTable41"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table41" />
<TextView
android:id="@+id/textTable56"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table56" />
<TextView
android:id="@+id/textTable71"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table71" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table12" />
<TextView
android:id="@+id/textTable27"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table27" />
<TextView
android:id="@+id/textTable42"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table42" />
<TextView
android:id="@+id/textTable57"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table57" />
<TextView
android:id="@+id/textTable72"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table72" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table13" />
<TextView
android:id="@+id/textTable28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table28" />
<TextView
android:id="@+id/textTable43"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table43" />
<TextView
android:id="@+id/textTable58"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table58" />
<TextView
android:id="@+id/textTable73"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table73" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table14" />
<TextView
android:id="@+id/textTable29"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table29" />
<TextView
android:id="@+id/textTable44"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table44" />
<TextView
android:id="@+id/textTable59"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table59" />
<TextView
android:id="@+id/textTable74"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table74" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTable15"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table15" />
<TextView
android:id="@+id/textTable30"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table30" />
<TextView
android:id="@+id/textTable45"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table45" />
<TextView
android:id="@+id/textTable60"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table60" />
<TextView
android:id="@+id/textTable75"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:text="@string/table75" />
</TableRow>
</TableLayout>
<TextView
android:id="@+id/textViewHistory"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:gravity="center"
android:text="@string/history" />
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:layout_marginRight="20dp"
android:background="#00C853">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory15"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory16"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory17"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory18"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory19"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory20"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory23"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory24"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory25"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory26"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory27"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory29"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory30"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory32"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory33"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory34"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory35"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory36"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory37"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory38"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory39"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory40"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory41"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory42"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory43"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory44"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory45"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory46"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory47"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory48"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory49"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory51"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory52"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory53"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory54"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory55"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory56"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory57"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory58"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory59"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory60"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory61"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory62"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory63"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory64"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory65"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory66"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory67"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory68"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory69"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory70"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableHistory71"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory72"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory73"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory74"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
<TextView
android:id="@+id/textTableHistory75"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_marginBottom="1dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="4dp" />
</TableRow>
</TableLayout>
<Space
android:layout_width="match_parent"
android:layout_height="200dp" />
</LinearLayout>
</ScrollView>
<LinearLayout
android:id="@+id/adContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SettingActivity">
<LinearLayout
android:id="@+id/layoutButtons"
android:layout_width="match_parent"
android:layout_height="48dip"
android:layout_marginTop="1dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/textCancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/setting_cancel_bg"
android:gravity="center"
android:minHeight="48dip"
android:text="@string/cancel" />
<TextView
android:id="@+id/textApply"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_weight="1"
android:background="@color/setting_apply_bg"
android:gravity="center"
android:minHeight="48dip"
android:text="@string/apply" />
</LinearLayout>
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/layoutButtons">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="vertical"
android:paddingLeft="20dp"
android:paddingTop="20dp"
android:paddingRight="20dp"
android:paddingBottom="50dp">
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/switchResetMachine"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/reset_machine" />
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/reset_machine1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/switchResetCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="@string/reset_card" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/reset_card1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/switchSpeechNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="@string/speech_number" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/speech_number1" />
<Spinner
android:id="@+id/spinnerVoice"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_marginBottom="10dp"
android:gravity="start" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/volume_spin"
android:textColor="?android:attr/textColorPrimary" />
<SeekBar
android:id="@+id/seekBarVolumeSpin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="10"
android:progress="0" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/volume_speech"
android:textColor="?android:attr/textColorPrimary" />
<SeekBar
android:id="@+id/seekBarVolumeSpeech"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="10"
android:progress="0" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/short_number"
android:textColor="?android:attr/textColorPrimary" />
<SeekBar
android:id="@+id/seekBarShortNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="9"
android:progress="0" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/short_number1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="30dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="10dp"
android:text="@string/textSizeTable"
android:textColor="?android:attr/textColorPrimary" />
<EditText
android:id="@+id/editTextSizeTable"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="4"
android:inputType="number" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/textSizeTable1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="30dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="10dp"
android:text="@string/textSizeCard"
android:textColor="?android:attr/textColorPrimary" />
<EditText
android:id="@+id/editTextSizeCard"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="4"
android:inputType="number" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/textSizeCard1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/language"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="@string/languageNote" />
<RadioGroup
android:layout_width="match_parent"
android:layout_height="match_parent" >
<RadioButton
android:id="@+id/radioLanguageSystem"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageSystem" />
<RadioButton
android:id="@+id/radioLanguageEn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageEn" />
<RadioButton
android:id="@+id/radioLanguageBg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageBg" />
<RadioButton
android:id="@+id/radioLanguageCs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageCs" />
<RadioButton
android:id="@+id/radioLanguageDa"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageDa" />
<RadioButton
android:id="@+id/radioLanguageDe"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageDe" />
<RadioButton
android:id="@+id/radioLanguageEl"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageEl" />
<RadioButton
android:id="@+id/radioLanguageEs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageEs" />
<RadioButton
android:id="@+id/radioLanguageEt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageEt" />
<RadioButton
android:id="@+id/radioLanguageFi"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageFi" />
<RadioButton
android:id="@+id/radioLanguageFr"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageFr" />
<RadioButton
android:id="@+id/radioLanguageHu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageHu" />
<RadioButton
android:id="@+id/radioLanguageIt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageIt" />
<RadioButton
android:id="@+id/radioLanguageJa"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageJa" />
<RadioButton
android:id="@+id/radioLanguageLt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageLt" />
<RadioButton
android:id="@+id/radioLanguageLv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageLv" />
<RadioButton
android:id="@+id/radioLanguageNl"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageNl" />
<RadioButton
android:id="@+id/radioLanguagePl"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languagePl" />
<RadioButton
android:id="@+id/radioLanguagePt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languagePt" />
<RadioButton
android:id="@+id/radioLanguageRo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageRo" />
<RadioButton
android:id="@+id/radioLanguageRu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageRu" />
<RadioButton
android:id="@+id/radioLanguageSk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageSk" />
<RadioButton
android:id="@+id/radioLanguageSv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageSv" />
<RadioButton
android:id="@+id/radioLanguageTh"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageTh" />
<RadioButton
android:id="@+id/radioLanguageZh"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/languageZh" />
</RadioGroup>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/switchTheme"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="@string/darkTheme" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/usage" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="@string/usage1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/usage_machine" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="@string/usage_machine1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/usage_card" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="@string/usage_card1" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/usage2" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="?android:attr/listDivider" />
<Space
android:layout_width="match_parent"
android:layout_height="120dp" />
</LinearLayout>
</ScrollView>
</androidx.constraintlayout.widget.ConstraintLayout>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/card_bg"
tools:context=".CardActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/layoutButtons"
android:layout_width="match_parent"
android:layout_height="48dip"
android:layout_marginTop="1dp"
android:orientation="horizontal">
<TextView
android:id="@+id/textTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="4"
android:background="@color/card_title_bg"
android:gravity="center"
android:minHeight="48dip"
android:text="@string/lets_bingo" />
<TextView
android:id="@+id/textCancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_weight="1"
android:background="@color/card_back_bg"
android:gravity="center"
android:minHeight="48dip"
android:text="@string/bak" />
</LinearLayout>
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="vertical"
android:paddingLeft="20dp"
android:paddingTop="20dp"
android:paddingRight="20dp"
android:paddingBottom="50dp">
<TableLayout
android:id="@+id/tableView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:layout_marginRight="10dp"
android:background="#ffffff">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textTableB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="#B2FF59"
android:gravity="center"
android:text="@string/table_b"
android:textColor="#388E3C"
android:textSize="30sp" />
<TextView
android:id="@+id/textTableI"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="#B2FF59"
android:gravity="center"
android:text="@string/table_i"
android:textColor="#388E3C"
android:textSize="30sp" />
<TextView
android:id="@+id/textTableN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="#B2FF59"
android:gravity="center"
android:text="@string/table_n"
android:textColor="#388E3C"
android:textSize="30sp" />
<TextView
android:id="@+id/textTableG"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="#B2FF59"
android:gravity="center"
android:text="@string/table_g"
android:textColor="#388E3C"
android:textSize="30sp" />
<TextView
android:id="@+id/textTableO"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="3dp"
android:layout_weight="1"
android:background="#B2FF59"
android:gravity="center"
android:text="@string/table_o"
android:textColor="#388E3C"
android:textSize="30sp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textCard1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:clickable="true"
android:focusable="true"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard16"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textCard2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:clickable="true"
android:focusable="true"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard17"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textCard3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard18"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard23"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textCard4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard19"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard24"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textCard5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginBottom="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginBottom="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard15"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginBottom="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard20"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginBottom="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
<TextView
android:id="@+id/textCard25"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="3dp"
android:layout_marginBottom="3dp"
android:layout_weight="1"
android:background="@color/floor"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:textSize="30sp" />
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:orientation="horizontal">
<EditText
android:id="@+id/editTextFree1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2"
android:ems="10"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:text="Reach" />
<TextView
android:id="@+id/textViewFree1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="▶" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:orientation="horizontal">
<EditText
android:id="@+id/editTextFree2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2"
android:ems="10"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:text="Bingo" />
<TextView
android:id="@+id/textViewFree2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="▶" />
</LinearLayout>
</LinearLayout>
</ScrollView>
<LinearLayout
android:id="@+id/adContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
このページのQRコード
便利ウェブサイト
便利 Android アプリ
便利 iOS(iPhone,iPad) アプリ