#seekbarを使って背景色を変更したいです.
###現状
・activity_main.xmlでseekbarと背景色用のviewの実装
・seekbarのMaxの値を255に設定
Kotlin
1<?xml version="1.0" encoding="utf-8"?> 2<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:app="http://schemas.android.com/apk/res-auto" 4 xmlns:tools="http://schemas.android.com/tools" 5 android:layout_width="match_parent" 6 android:layout_height="match_parent" 7 tools:context=".MainActivity"> 8 9 10 <View 11 android:id="@+id/backgroundColor" 12 android:layout_width="wrap_content" 13 android:layout_height="wrap_content" 14 android:background="#0000FF" 15 app:layout_constraintBottom_toBottomOf="parent" 16 app:layout_constraintEnd_toEndOf="parent" 17 app:layout_constraintStart_toStartOf="parent" 18 app:layout_constraintTop_toTopOf="parent" /> 19 20 <SeekBar 21 android:id="@+id/seekBar" 22 android:layout_width="match_parent" 23 android:layout_height="wrap_content" 24 android:max="255" 25 app:layout_constraintBottom_toBottomOf="parent" 26 app:layout_constraintLeft_toLeftOf="parent" 27 app:layout_constraintRight_toRightOf="parent" 28 app:layout_constraintTop_toTopOf="parent" /> 29 30 31</androidx.constraintlayout.widget.ConstraintLayout>
Kotlin
1package com.example.healthcareapp 2 3import androidx.appcompat.app.AppCompatActivity 4import android.os.Bundle 5import android.widget.TextView 6import android.graphics.Color 7import android.widget.SeekBar 8import kotlinx.android.synthetic.main.activity_main.* 9import android.widget.SeekBar.OnSeekBarChangeListener 10 11 12 13class MainActivity : AppCompatActivity() { 14 15 override fun onCreate(savedInstanceState: Bundle?) { 16 super.onCreate(savedInstanceState) 17 setContentView(R.layout.activity_main) 18 19 20 } 21 22 23}
解決法だけでなく質問の仕方など,ご指摘もいただけたら嬉しいです.
コードの類は, スクリーンショットではなくマークダウンによってご質問に記述してください.
試す必要がある場合にスクリーンショットでは全て入力しなければなりません. それでは手間が掛りますし, 入力にミスがあっては間違った回答になる可能性があります. マークダウンであればコピペできます.
試行錯誤した様子が感じられなければ「作業依頼」「丸投げ」と取られ易くなります. 現状 レイアウトと初期生成状態のクラス・メソッドのみでは, ほぼそのように取られると思います.
シークバーの値の変化を表示してみる(=シークバーの変化は取れた), ボタンを複数追加してみて各ボタンを押したら背景色が変わる(=背景色は変えられた)等で, 「これは出来たがコレが出来ない」ということをどこまで突き詰められているでしょうか.
そのような情報(コード)を追加していただけると良いかと思います.
ご指摘いただきありがとうございます.
すみません。失礼しますm(_ _)m
あの、質問内容とタイトルだけで、何から勉強すればいいのかということと、seekbarの値を背景色に渡したいという二つ質問していることになります。どちらか一つにしてください。どちらも質問したければ、二回に分けて質問してください。お願いします。回答する側はどちらに答えればいいのかわかりませんね。長々と失礼しました・・
編集ありがとうございますm(_ _)m
編集確認しました。あの・・・背景をただ変えたいということですか?
それであればseekbarの中に
android:background="00F"
という風にすればいいと思いますよ・・・
seekbarの値を変えるだけではなく,seekbarの値に応じて,背景色が変えたいということです.
質問本文の”seekbarの値に応じて,背景色が変わるプログラムを作りたいです.”とはそういう意図で書かせていただきました.
うまく伝えられていなかったらすみません.
例えば(例えばですよ?)画面が変わった時に背景色を変えるとかですか?
そのたとえは,どういうことでしょうか?
tonko さん
ユーザーがシークバーを左端から右端にゆっくりスライドさせると, リアルタイムにアクティビティの背景が虹色に変化するようなイメージかと思います.
jimbeさん> まさにその通りです.
シークバーを左端から右端にゆっくりスライドさせて,リアルタイムに背景色を変化させたいです
返信遅れました。そうなんですね。わかりました。ありがとうございます


