2015-03-13 3 views
0

У меня есть 2 текстовых вида в моем фрагменте. При открытии фрагмента 1-й текст будет красным (# e92624). При нажатии 2-го текстового вида 1-й вид должен быть черным (# D8000000), а второй текстовый вид должен быть красным.Проблема с изменением цвета textview - андроидальный фрагмент

в моем OnCreate у меня есть,

mQuickReturnViewPas.setBackgroundColor(Color.parseColor("#e92624")); 

     if (selectedView != null) 
      mQuickReturnViewPas.setBackgroundColor(Color 
        .parseColor("#D8000000")); 

Вне OnCreate у меня есть,

     mQuickReturnViewPas 
         .setOnClickListener(new View.OnClickListener() { 

          @Override 
          public void onClick(View v) { 

           if (selectedView != null) 
            selectedView.setBackgroundColor(Color 
              .parseColor("#D8000000")); 

           // set selectedView to be current selected view 
           selectedView = (TextView) v; 

           // change selected view to be red 
           selectedView.setBackgroundColor(Color 
             .parseColor("#e92624")); 

          } 

         }); 

       mQuickReturnViewRic 
         .setOnClickListener(new View.OnClickListener() { 
          @Override 
          public void onClick(View v) { 

           if (selectedView != null) 
            selectedView.setBackgroundColor(Color 
              .parseColor("#D8000000")); 

           // set selectedView to be current selected view 
           selectedView = (TextView) v; 

           // change selected view to be red 
           selectedView.setBackgroundColor(Color 
             .parseColor("#e92624")); 
          } 

         }); 
      } 

С помощью этого кода, если нажать второй текст просмотра превращается в красный, но 1-й текст вид остается в красный (не меняется на черный). Какое изменение я должен сделать в моем методе onCreate для достижения этой задачи?

+0

В OnClick вы должны изменить цвет вашего первого взгляда текста не в OnCreate. – Keshav1234

+0

Да, ответ1 сделает это за вас. Вам не удалось получить это заявление other_textView.setBackgroundColor (Цвет .parseColor ("# D8000000")); – Keshav1234

+0

@ Kesh1234 Мой плохой я пропустил, это действительно работает :) – modabeckham

ответ

0

Update ваши методы как этот

mQuickReturnViewPas 
          .setOnClickListener(new View.OnClickListener() { 

           @Override 
           public void onClick(View v) { 

            if (selectedView != null) 
             selectedView.setBackgroundColor(Color 
               .parseColor("#D8000000")); 

            // set selectedView to be current selected view 
            selectedView = (TextView) v; 

            // change selected view to be red 
            selectedView.setBackgroundColor(Color 
              .parseColor("#e92624")); 
            // change non-selected view to be black 
              mQuickReturnViewRic.setBackgroundColor(Color 
               .parseColor("#D8000000")); 



           } 

          }); 

        mQuickReturnViewRic 
          .setOnClickListener(new View.OnClickListener() { 
           @Override 
           public void onClick(View v) { 

            if (selectedView != null) 
             selectedView.setBackgroundColor(Color 
               .parseColor("#D8000000")); 

            // set selectedView to be current selected view 
            selectedView = (TextView) v; 

            // change selected view to be red 
            selectedView.setBackgroundColor(Color 
              .parseColor("#e92624")); 
            // change non-selected view to be black 
           mQuickReturnViewPas.setBackgroundColor(Color 
                .parseColor("#D8000000")); 
           } 

          }); 
Смежные вопросы