как решить предупреждение в программе Android "никогда не читать локально" - PullRequest
0 голосов
/ 14 июля 2011

Почему я получаю предупреждение:

The field testscreen.ScaleAnimToShow.mVanishAfter is never read locally testscreen.java /testscreen/src/com/testscreen  line 186    Java Problem

из следующего кода?

public class ScaleAnimToShow extends ScaleAnimation{
       private View mView;
       private LayoutParams mLayoutParams;
       private int mMarginBottomFromY, mMarginBottomToY;
       private boolean mVanishAfter = false;

       public ScaleAnimToShow(float toX, float fromX, float toY, float fromY, int duration, View view,boolean vanishAfter){
           super(fromX, toX, fromY, toY);
           openLayout = view;
           setDuration(duration);
           mView = view;
           mVanishAfter = vanishAfter;
           mLayoutParams = (LayoutParams) view.getLayoutParams();
           mView.setVisibility(View.VISIBLE);
           int height = mView.getHeight();
           //mMarginBottomFromY = (int) (height * fromY) + mLayoutParams.bottomMargin + height;
           //mMarginBottomToY = (int) (0 - ((height * toY) + mLayoutParams.bottomMargin)) + height;
           mMarginBottomFromY = 0;
           mMarginBottomToY = height;
           Log.v("CZ",".................height..." + height + " , mMarginBottomFromY...." + mMarginBottomFromY  + " , mMarginBottomToY.." +mMarginBottomToY);
       }

Ответы [ 3 ]

4 голосов
/ 14 июля 2011

Это потому, что у вас есть поле, которое занимает некоторое место в памяти, но никогда не читается в вашей программе.

Вы можете устранить это предупреждение:

  • Удалите это поле.Если вы не используете его, не сохраняйте его в своем коде.
    или
  • Добавьте аннотацию @SuppressWarnings("unused").Это может быть полезно, когда это поле используется с помощью аннотации или вы хотите сохранить его в коде по другим причинам.
@SuppressWarnings("unused")
private boolean mVanishAfter = false;
2 голосов
/ 14 июля 2011

У вас есть личный участник класса, mVanishAfter, который никогда не читается.Поскольку он является закрытым в классе, среда IDE может видеть, что он никогда не используется, что представляется ошибкой.

0 голосов
/ 14 июля 2011

Потому что вы никогда не читаете mVanishAfter.По крайней мере, в коде, который вы разместили, вы только назначаете его, и, поскольку он является частным, его никогда нельзя прочитать откуда-либо еще.Переменная не «читается», когда она назначена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...