android studioにてアプリを開発中なのですが、Textviewの背景色の設定で悩んでおります。
Activity_main.xml側でviewの背景色/枠を設定しているのですが、コード側で”.setBackgroundColor(Color.*****);”を使うと色だけで無く枠の設定も変わってしまいます。
枠等の設定はそのままにして背景色のみ制御したいのですがどうすればいいのでしょうか?
色々とググりましたが調べきれず、申し訳ないのですがアドバイス頂けると助かります。
お手数ですがよろしくお願い致します。
MainActivity
1import androidx.appcompat.app.AppCompatActivity; 2import android.graphics.Color; 3import android.os.Bundle; 4import android.widget.Button; 5import android.widget.EditText; 6import android.widget.RadioButton; 7import android.widget.RadioGroup; 8import android.widget.TextView; 9 10public class MainActivity extends AppCompatActivity { 11 12 private int int_MinScale; 13 private int int_MaxScale; 14 private String str_MinScale; 15 private String str_MaxScale; 16 private EditText InMinScale; 17 18 19 @Override 20 protected void onCreate(Bundle savedInstanceState) { 21 super.onCreate(savedInstanceState); 22 setContentView(R.layout.activity_main); 23 24 RadioGroup rgroup = (RadioGroup)findViewById(R.id.radioGroup); 25 InMinScale = findViewById(R.id.input_min_scale); 26 EditText InMaxsSale = findViewById(R.id.input_max_scale); 27 EditText AdcPoint = findViewById(R.id.ADC_point); 28 EditText CurrPoint = findViewById(R.id.Current_point); 29 TextView Adcp_result = findViewById(R.id.ADC_point_result); 30 TextView Currp_result = findViewById(R.id.Cur_point_result); 31 Button calc_btn = findViewById(R.id.calculate_button); 32 RadioButton radioButton = findViewById(R.id.radioButton); 33 RadioButton radioButton2 = findViewById(R.id.radioButton2); 34 35 //ラジオボタンが選択されてなかったらスケールは入力できないようにする 36 if (radioButton.isChecked() == false && radioButton2.isChecked() == false) { 37 InMinScale.setEnabled(false); 38 //以下でsetBackgroundColorを使うとxml側の設定が無視されてしまう。 39 InMinScale.setBackgroundColor(Color.DKGRAY); 40 41 } 42 43 //以下、ラジオボタンで計算モードを選択 44 rgroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { 45 @Override 46 public void onCheckedChanged(RadioGroup radioGroup, int i) { 47 48 49 //以下計算モードは”ADC Value” 50 if (i == R.id.radioButton) { 51 boolean rdobtn_chk = radioButton.isChecked(); 52 fullScale(rdobtn_chk); 53 54 **ここは作成中**** 55 56 57 } else { 58 Adcp_result.setText("not in"); 59 **ここは作成中**** 60 61 } 62 63 } 64 } 65 }); 66 67 } 68 69 //以下、フルスケール入力関数 70 private void fullScale(boolean rdobtn_chk) { 71 InMinScale.setEnabled(true); 72 InMinScale.setBackgroundColor(Color.rgb(222,210,191)); 73 74 } 75 76}
activity_main.xml
1 2 <TextView 3 android:id="@+id/textView3" 4 android:layout_width="380dp" 5 android:layout_height="23dp" 6 android:layout_marginTop="8dp" 7 android:fontFamily="sans-serif-light" 8 android:text="@string/main_title" 9 android:textAlignment="center" 10 android:textColor="@color/white" 11 android:textSize="18sp" 12 android:textStyle="bold|italic" 13 android:typeface="monospace" 14 app:layout_constraintEnd_toEndOf="@+id/imageView3" 15 app:layout_constraintStart_toStartOf="@+id/imageView3" 16 app:layout_constraintTop_toTopOf="parent" /> 17 18 <RadioGroup 19 android:id="@+id/radioGroup" 20 android:layout_width="350dp" 21 android:layout_height="wrap_content" 22 android:layout_marginTop="16dp" 23 android:background="@drawable/frame_style2" 24 android:orientation="horizontal" 25 app:layout_constraintEnd_toEndOf="parent" 26 app:layout_constraintStart_toStartOf="parent" 27 app:layout_constraintTop_toTopOf="@+id/imageView2"> 28 29 <RadioButton 30 android:id="@+id/radioButton" 31 android:layout_width="139dp" 32 android:layout_height="wrap_content" 33 android:layout_weight="0.35" 34 android:text="@string/adc_value" /> 35 36 <RadioButton 37 android:id="@+id/radioButton2" 38 android:layout_width="139dp" 39 android:layout_height="wrap_content" 40 android:layout_weight="1" 41 android:text="@string/current_value_of_4_20ma" /> 42 43 </RadioGroup> 44 45 <TextView 46 android:id="@+id/calc_mode" 47 android:layout_width="350dp" 48 android:layout_height="17.5dp" 49 android:gravity="bottom" 50 android:text="@string/calculation_mode_select_pls_select_either_the_calculate_mode" 51 android:textColor="@android:color/black" 52 android:textSize="11sp" 53 app:layout_constraintBottom_toTopOf="@+id/radioGroup" 54 app:layout_constraintStart_toStartOf="@+id/radioGroup" /> 55 56 <ImageView 57 android:id="@+id/imageView" 58 android:layout_width="381dp" 59 android:layout_height="215dp" 60 android:layout_marginTop="32dp" 61 android:background="@drawable/frame_style3" 62 android:contentDescription="@string/todo" 63 app:layout_constraintBottom_toBottomOf="parent" 64 app:layout_constraintEnd_toEndOf="parent" 65 app:layout_constraintHorizontal_bias="0.466" 66 app:layout_constraintStart_toStartOf="@+id/imageView2" 67 app:layout_constraintTop_toTopOf="@+id/imageView2" 68 app:layout_constraintVertical_bias="0.652" /> 69 70 <EditText 71 android:id="@+id/input_min_scale" 72 android:layout_width="92dp" 73 android:layout_height="38dp" 74 android:layout_marginStart="4dp" 75 android:layout_marginBottom="160dp" 76 android:autofillHints="" 77 android:background="@drawable/frame_style2" 78 android:ems="10" 79 android:hint="@string/pls_input_mim" 80 android:inputType="textMultiLine" 81 android:lines="3" 82 android:textSize="11sp" 83 app:layout_constraintBottom_toBottomOf="@+id/imageView" 84 app:layout_constraintStart_toStartOf="@+id/radioGroup" />
回答1件
あなたの回答
tips
プレビュー