左側にクロノメーターがあり、RelativeLayoutの中央にテキストビューがあるタイトルバーがあるアプリに取り組んでいます。
RelativeLayoutは、テキストビューの高さと塗りつぶし画面の幅を取得します
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/titlecontainer"
android:orientation="vertical"
android:padding="5dip"
android:layout_height="wrap_content"
android:layout_width="fill_parent" android:background="@color/titlebckgrnd">
ユーザーがそれをクリックしたときにchhornometerを非表示にし、ユーザーがもう一度クリックしたときにそれを再表示したいと思います。
これはどのように達成できますか?
編集、さらに回答とコメントに:
これがカラーファイルコードです
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="titlebckgrnd">#FFD55A2E</color>
<color name="titletext">#FFFFFFFF</color>
</resources>
私は提案されたように次のコードを使用しました
final TextView chron = (TextView)findViewById(R.id.chronometer);
((Chronometer) chron).start();
chron.setOnClickListener(new OnClickListener() {
private boolean mToggle = true;
@Override
public void onClick(View v) {
Log.d("Gaurav", "Invisible");
if(mToggle) {
Log.d("Gaurav", String.valueOf(chron.getCurrentTextColor()));
chron.setTextColor(R.color.titlebckgrnd);
mToggle = false;
}
else {
chron.setTextColor(R.color.titletext);
mToogle = true;
}
//chronImage.setVisibility(View.VISIBLE);
//v.setVisibility(View.INVISIBLE);
}
});
しかし、結果は
それ以上のクリックには反応しません。
LogCatの結果
デバッガーブレークポイントでさえTextcolor値の変化を示しますが、表示の色の変化は起こりません。