Example usage for android.view View setVisibility

List of usage examples for android.view View setVisibility

Introduction

In this page you can find the example usage for android.view View setVisibility.

Prototype

@RemotableViewMethod
public void setVisibility(@Visibility int visibility) 

Source Link

Document

Set the visibility state of this view.

Usage

From source file:fr.shywim.antoinedaniel.ui.MainActivity.java

@Override
public void onGoogleApiClientConnected() {
    getSharedPreferences(AppConstants.GOOGLE_PREFS, MODE_PRIVATE).edit()
            .putBoolean(AppConstants.GOOGLE_CONNECTED, true).apply();
    // Update the Navigation Drawer
    populateNavDrawer();/*w w  w.jav  a  2s .co m*/
    formatNavDrawer();
    // Google+ sign-in related views in GamesFragment
    View view = findViewById(R.id.sign_in_button);
    if (view != null) {
        view.setVisibility(View.GONE);
    }
    view = findViewById(R.id.sign_in_controll);
    if (view != null) {
        ((ImageView) view).setColorFilter(getResources().getColor(R.color.primary), PorterDuff.Mode.MULTIPLY);
        view.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(mContext, R.string.gplay_connected, Toast.LENGTH_SHORT).show();
            }
        });
    }
}

From source file:net.naonedbus.fragment.CustomListFragment.java

/**
 * Afficher un message avec une desciption et un symbole.
 * //from   w w w . j  a  va2s  .  com
 * @param title
 *            Le titre.
 * @param description
 *            La description.
 * @param drawableRes
 *            L'identifiant du symbole.
 */
protected void showMessage(final String title, final String description, final int drawableRes) {
    if (State.MESSAGE == mCurrentState) {
        return;
    }

    if (DBG)
        Log.d(LOG_TAG + "$" + getClass().getSimpleName(),
                "showMessage " + title + "\t" + description + "\t" + drawableRes);

    mCurrentState = State.MESSAGE;

    mFragmentView.findViewById(android.R.id.list).setVisibility(View.GONE);
    mFragmentView.findViewById(R.id.fragmentLoading).setVisibility(View.GONE);

    View message = mFragmentView.findViewById(R.id.fragmentMessage);
    if (message == null) {
        final ViewStub messageStrub = (ViewStub) mFragmentView.findViewById(R.id.fragmentMessageStub);
        message = messageStrub.inflate();
    }

    message.setVisibility(View.VISIBLE);

    final TextView titleView = (TextView) message.findViewById(android.R.id.title);
    titleView.setText(title);
    titleView.setCompoundDrawablesWithIntrinsicBounds(0, drawableRes, 0, 0);

    final TextView descriptionView = (TextView) message.findViewById(android.R.id.summary);
    if (description != null) {
        descriptionView.setText(description);
        descriptionView.setVisibility(View.VISIBLE);
    } else {
        descriptionView.setVisibility(View.GONE);
    }
}

From source file:in.shick.diode.common.Common.java

public static void updateNextPreviousButtons(ListActivity act, View nextPreviousView, String after,
        String before, int count, RedditSettings settings, OnClickListener downloadAfterOnClickListener,
        OnClickListener downloadBeforeOnClickListener) {
    boolean shouldShow = after != null || before != null;
    Button nextButton = null;/*from  ww w.  j  a  va  2s . c o  m*/
    Button previousButton = null;

    // If alwaysShowNextPrevious, use the navbar
    if (settings.isAlwaysShowNextPrevious()) {
        nextPreviousView = act.findViewById(R.id.next_previous_layout);
        if (nextPreviousView == null) {
            return;
        }
        View nextPreviousBorder = act.findViewById(R.id.next_previous_border_top);

        if (shouldShow) {
            if (nextPreviousBorder != null) {
                if (Util.isLightTheme(settings.getTheme())) {
                    nextPreviousView.setBackgroundResource(android.R.color.background_light);
                    nextPreviousBorder.setBackgroundResource(R.color.black);
                } else {
                    nextPreviousBorder.setBackgroundResource(R.color.white);
                }
                nextPreviousView.setVisibility(View.VISIBLE);
            }
            // update the "next 25" and "prev 25" buttons
            nextButton = (Button) act.findViewById(R.id.next_button);
            previousButton = (Button) act.findViewById(R.id.previous_button);
        } else {
            nextPreviousView.setVisibility(View.GONE);
        }
    }
    // Otherwise we are using the ListView footer
    else {
        if (nextPreviousView == null) {
            return;
        }
        if (shouldShow && nextPreviousView.getVisibility() != View.VISIBLE) {
            nextPreviousView.setVisibility(View.VISIBLE);
        } else if (!shouldShow && nextPreviousView.getVisibility() == View.VISIBLE) {
            nextPreviousView.setVisibility(View.GONE);
        }
        // update the "next 25" and "prev 25" buttons
        nextButton = (Button) nextPreviousView.findViewById(R.id.next_button);
        previousButton = (Button) nextPreviousView.findViewById(R.id.previous_button);
    }
    if (nextButton != null) {
        if (after != null) {
            nextButton.setVisibility(View.VISIBLE);
            nextButton.setOnClickListener(downloadAfterOnClickListener);
        } else {
            nextButton.setVisibility(View.INVISIBLE);
        }
    }
    if (previousButton != null) {
        if (before != null && count != Constants.DEFAULT_THREAD_DOWNLOAD_LIMIT) {
            previousButton.setVisibility(View.VISIBLE);
            previousButton.setOnClickListener(downloadBeforeOnClickListener);
        } else {
            previousButton.setVisibility(View.INVISIBLE);
        }
    }
}

From source file:com.ichi2.anki.Feedback.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    Themes.applyTheme(this);
    super.onCreate(savedInstanceState);

    Resources res = getResources();

    Context context = getBaseContext();
    SharedPreferences sharedPreferences = AnkiDroidApp.getSharedPrefs(context);
    mReportErrorMode = sharedPreferences.getString("reportErrorMode", REPORT_ASK);

    mNonce = UUID.randomUUID().getMostSignificantBits();
    mFeedbackUrl = res.getString(R.string.feedback_post_url);
    mErrorUrl = res.getString(R.string.error_post_url);
    mImm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

    mPostingFeedback = false;/*from w  w w .j  a  v a 2 s . c o  m*/
    initAllAlertDialogs();

    getErrorFiles();
    Intent i = getIntent();
    mAllowFeedback = (i.hasExtra("request") && (i.getIntExtra("request", 0) == DeckPicker.REPORT_FEEDBACK
            || i.getIntExtra("request", 0) == DeckPicker.RESULT_DB_ERROR))
            || mReportErrorMode.equals(REPORT_ASK);
    if (!mAllowFeedback) {
        if (mReportErrorMode.equals(REPORT_ALWAYS)) { // Always report
            try {
                String feedback = "Automatically sent";
                Connection.sendFeedback(mSendListener, new Payload(new Object[] { mFeedbackUrl, mErrorUrl,
                        feedback, mErrorReports, mNonce, getApplication(), true }));
                if (mErrorReports.size() > 0) {
                    mPostingFeedback = true;
                }
                if (feedback.length() > 0) {
                    mPostingFeedback = true;
                }
            } catch (Exception e) {
                Log.e(AnkiDroidApp.TAG, e.toString());
            }
            finish();
            ActivityTransitionAnimation.slide(Feedback.this, ActivityTransitionAnimation.NONE);
            return;
        } else if (mReportErrorMode.equals(REPORT_NEVER)) { // Never report
            deleteFiles(false, false);
            finish();
            ActivityTransitionAnimation.slide(Feedback.this, ActivityTransitionAnimation.NONE);
            return;
        }
    }

    View mainView = getLayoutInflater().inflate(R.layout.feedback, null);
    setContentView(mainView);
    Themes.setWallpaper(mainView);
    Themes.setTextViewStyle(findViewById(R.id.tvFeedbackDisclaimer));
    Themes.setTextViewStyle(findViewById(R.id.lvFeedbackErrorList));

    Button btnSend = (Button) findViewById(R.id.btnFeedbackSend);
    Button btnKeepLatest = (Button) findViewById(R.id.btnFeedbackKeepLatest);
    Button btnClearAll = (Button) findViewById(R.id.btnFeedbackClearAll);
    mEtFeedbackText = (EditText) findViewById(R.id.etFeedbackText);
    mLvErrorList = (ListView) findViewById(R.id.lvFeedbackErrorList);

    mErrorAdapter = new SimpleAdapter(this, mErrorReports, R.layout.error_item,
            new String[] { "name", "state", "result" },
            new int[] { R.id.error_item_text, R.id.error_item_progress, R.id.error_item_status });
    mErrorAdapter.setViewBinder(new SimpleAdapter.ViewBinder() {
        @Override
        public boolean setViewValue(View view, Object arg1, String text) {
            switch (view.getId()) {
            case R.id.error_item_progress:
                if (text.equals(STATE_UPLOADING)) {
                    view.setVisibility(View.VISIBLE);
                } else {
                    view.setVisibility(View.GONE);
                }
                return true;
            case R.id.error_item_status:
                if (text.length() == 0) {
                    view.setVisibility(View.GONE);
                    return true;
                } else {
                    view.setVisibility(View.VISIBLE);
                    return false;
                }
            }
            return false;
        }
    });

    btnClearAll.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            deleteFiles(false, false);
            refreshErrorListView();
            refreshInterface();
        }
    });

    mLvErrorList.setAdapter(mErrorAdapter);

    btnSend.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            if (!mPostingFeedback) {
                String feedback = mEtFeedbackText.getText().toString();
                Connection.sendFeedback(mSendListener, new Payload(new Object[] { mFeedbackUrl, mErrorUrl,
                        feedback, mErrorReports, mNonce, getApplication(), false }));
                if (mErrorReports.size() > 0) {
                    mPostingFeedback = true;
                }
                if (feedback.length() > 0) {
                    mPostingFeedback = true;
                }
                refreshInterface();
            }
        }
    });

    btnKeepLatest.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            deleteFiles(false, true);
            refreshErrorListView();
            refreshInterface();
        }
    });

    refreshInterface();

    getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN
            | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

}

From source file:de.aw.awlib.fragments.AWRemoteFileChooser.java

@Override
public void onBindViewHolder(AWLibViewHolder holder, FTPFile file, int position) {
    TextView tv;/*w w w .j a  v  a2  s  .  com*/
    switch (holder.getItemViewType()) {
    case BACKTOPARENT:
        for (int resID : viewResIDs) {
            View view = holder.itemView.findViewById(resID);
            if (resID == R.id.folderImage) {
                ImageView img = (ImageView) view;
                img.setImageResource(R.drawable.ic_open_folder);
            } else if (resID == R.id.awlib_fileName) {
                tv = (TextView) view;
                if (mDirectoyList.size() == 0) {
                    tv.setText(".");
                } else {
                    tv.setText(file.getName());
                }
            } else if (resID == R.id.awlib_fileData) {
                view.setVisibility(View.GONE);
            }
        }
        break;
    default:
        for (int resID : viewResIDs) {
            View view = holder.itemView.findViewById(resID);
            if (resID == R.id.folderImage) {
                ImageView img = (ImageView) view;
                if (file.isDirectory()) {
                    img.setImageResource(R.drawable.ic_closed_folder);
                } else {
                    img.setImageResource(R.drawable.ic_file_generic);
                }
            } else if (resID == R.id.awlib_fileName) {
                tv = (TextView) view;
                tv.setText(file.getName());
            } else if (resID == R.id.awlib_fileData) {
                view.setVisibility(View.VISIBLE);
                tv = (TextView) view;
                tv.setText(Formatter.formatFileSize(getContext(), file.getSize()));
            }
        }
    }
}

From source file:com.hichinaschool.flashcards.anki.Feedback.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    Themes.applyTheme(this);
    super.onCreate(savedInstanceState);

    Resources res = getResources();

    Context context = getBaseContext();
    SharedPreferences sharedPreferences = AnkiDroidApp.getSharedPrefs(context);
    mReportErrorMode = sharedPreferences.getString("reportErrorMode", REPORT_ASK);

    mNonce = UUID.randomUUID().getMostSignificantBits();
    mFeedbackUrl = res.getString(R.string.feedback_post_url);
    mErrorUrl = res.getString(R.string.error_post_url);
    mImm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

    mPostingFeedback = false;/*  w w  w.  jav a2s  . co  m*/
    initAllAlertDialogs();

    getErrorFiles();
    Intent i = getIntent();
    mAllowFeedback = (i.hasExtra("request") && (i.getIntExtra("request", 0) == DeckPicker.REPORT_FEEDBACK
            || i.getIntExtra("request", 0) == DeckPicker.RESULT_DB_ERROR))
            || mReportErrorMode.equals(REPORT_ASK);
    if (!mAllowFeedback) {
        if (mReportErrorMode.equals(REPORT_ALWAYS)) { // Always report
            try {
                String feedback = "Automatically sent";
                Connection.sendFeedback(mSendListener, new Payload(new Object[] { mFeedbackUrl, mErrorUrl,
                        feedback, mErrorReports, mNonce, getApplication(), true }));
                if (mErrorReports.size() > 0) {
                    mPostingFeedback = true;
                }
                if (feedback.length() > 0) {
                    mPostingFeedback = true;
                }
            } catch (Exception e) {
                Log.e(AnkiDroidApp.TAG, e.toString());
            }
            finish();
            if (AnkiDroidApp.SDK_VERSION > 4) {
                ActivityTransitionAnimation.slide(Feedback.this, ActivityTransitionAnimation.NONE);
            }
            return;
        } else if (mReportErrorMode.equals(REPORT_NEVER)) { // Never report
            deleteFiles(false, false);
            finish();
            if (AnkiDroidApp.SDK_VERSION > 4) {
                ActivityTransitionAnimation.slide(Feedback.this, ActivityTransitionAnimation.NONE);
            }
            return;
        }
    }

    View mainView = getLayoutInflater().inflate(R.layout.feedback, null);
    setContentView(mainView);
    Themes.setWallpaper(mainView);
    Themes.setTextViewStyle(findViewById(R.id.tvFeedbackDisclaimer));
    Themes.setTextViewStyle(findViewById(R.id.lvFeedbackErrorList));

    Button btnSend = (Button) findViewById(R.id.btnFeedbackSend);
    Button btnKeepLatest = (Button) findViewById(R.id.btnFeedbackKeepLatest);
    Button btnClearAll = (Button) findViewById(R.id.btnFeedbackClearAll);
    mEtFeedbackText = (EditText) findViewById(R.id.etFeedbackText);
    mLvErrorList = (ListView) findViewById(R.id.lvFeedbackErrorList);

    mErrorAdapter = new SimpleAdapter(this, mErrorReports, R.layout.error_item,
            new String[] { "name", "state", "result" },
            new int[] { R.id.error_item_text, R.id.error_item_progress, R.id.error_item_status });
    mErrorAdapter.setViewBinder(new SimpleAdapter.ViewBinder() {
        @Override
        public boolean setViewValue(View view, Object arg1, String text) {
            switch (view.getId()) {
            case R.id.error_item_progress:
                if (text.equals(STATE_UPLOADING)) {
                    view.setVisibility(View.VISIBLE);
                } else {
                    view.setVisibility(View.GONE);
                }
                return true;
            case R.id.error_item_status:
                if (text.length() == 0) {
                    view.setVisibility(View.GONE);
                    return true;
                } else {
                    view.setVisibility(View.VISIBLE);
                    return false;
                }
            }
            return false;
        }
    });

    btnClearAll.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            deleteFiles(false, false);
            refreshErrorListView();
            refreshInterface();
        }
    });

    mLvErrorList.setAdapter(mErrorAdapter);

    btnSend.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            if (!mPostingFeedback) {
                String feedback = mEtFeedbackText.getText().toString();
                Connection.sendFeedback(mSendListener, new Payload(new Object[] { mFeedbackUrl, mErrorUrl,
                        feedback, mErrorReports, mNonce, getApplication(), false }));
                if (mErrorReports.size() > 0) {
                    mPostingFeedback = true;
                }
                if (feedback.length() > 0) {
                    mPostingFeedback = true;
                }
                refreshInterface();
            }
        }
    });

    btnKeepLatest.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            deleteFiles(false, true);
            refreshErrorListView();
            refreshInterface();
        }
    });

    refreshInterface();

    getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN
            | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

}

From source file:cn.edu.nju.dapenti.activity.EditFeedActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    UiUtils.setPreferenceTheme(this);
    super.onCreate(savedInstanceState);

    ActionBar actionBar = getActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);

    setContentView(R.layout.activity_feed_edit);
    setResult(RESULT_CANCELED);//from   w  w w .j  a  va 2  s  .com

    Intent intent = getIntent();

    mNameEditText = (EditText) findViewById(R.id.feed_title);
    mUrlEditText = (EditText) findViewById(R.id.feed_url);
    mRetrieveFulltextCb = (CheckBox) findViewById(R.id.retrieve_fulltext);
    mFiltersListView = (ListView) findViewById(android.R.id.list);
    View filtersLayout = findViewById(R.id.filters_layout);
    View buttonLayout = findViewById(R.id.button_layout);

    if (intent.getAction().equals(Intent.ACTION_INSERT) || intent.getAction().equals(Intent.ACTION_SEND)) {
        setTitle(R.string.new_feed_title);

        filtersLayout.setVisibility(View.GONE);

        if (intent.hasExtra(Intent.EXTRA_TEXT)) {
            mUrlEditText.setText(intent.getStringExtra(Intent.EXTRA_TEXT));
        }

        restoreInstanceState(savedInstanceState);
    } else if (intent.getAction().equals(Intent.ACTION_EDIT)) {
        setTitle(R.string.edit_feed_title);

        buttonLayout.setVisibility(View.GONE);

        mFiltersCursorAdapter = new FiltersCursorAdapter(this, null);
        mFiltersListView.setAdapter(mFiltersCursorAdapter);
        mFiltersListView.setOnItemLongClickListener(new OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                startActionMode(mFilterActionModeCallback);
                mFiltersCursorAdapter.setSelectedFilter(position);
                mFiltersListView.invalidateViews();
                return true;
            }
        });

        getLoaderManager().initLoader(0, null, this);

        if (!restoreInstanceState(savedInstanceState)) {
            Cursor cursor = getContentResolver().query(intent.getData(), FEED_PROJECTION, null, null, null);

            if (cursor.moveToNext()) {
                mPreviousName = cursor.getString(0);
                mNameEditText.setText(mPreviousName);
                mUrlEditText.setText(cursor.getString(1));
                mRetrieveFulltextCb.setChecked(cursor.getInt(2) == 1);
                cursor.close();
            } else {
                cursor.close();
                Toast.makeText(EditFeedActivity.this, R.string.error, Toast.LENGTH_SHORT).show();
                finish();
            }
        }
    }
}

From source file:br.liveo.searchliveo.SearchLiveo.java

private void init(Context context) {
    View view = LayoutInflater.from(context).inflate(R.layout.search_liveo, this, true);

    mEdtSearch = (EditText) view.findViewById(R.id.edt_search);

    mImgArrowSearch = (ImageView) view.findViewById(R.id.img_arrow_search);
    mImgVoiceSearch = (ImageView) view.findViewById(R.id.img_voice_search);

    mImgCloseSearch = (ImageView) view.findViewById(R.id.img_close_search);
    mImgCloseSearch.setVisibility(isVoice() ? View.GONE : View.VISIBLE);

    mRecyclerView = (RecyclerView) view.findViewById(R.id.recycler_search_view);

    View toolbarShadow = view.findViewById(R.id.toolbar_shadow);
    toolbarShadow.setVisibility(GONE);

    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
        toolbarShadow.setVisibility(View.VISIBLE);
    }/* w w  w .j a v  a  2  s . c o  m*/

    mViewSearch = (RelativeLayout) view.findViewById(R.id.view_search);
    mViewSearch.setVisibility(View.INVISIBLE);

    mEdtSearch.setOnKeyListener(onKeyListener);

    mImgArrowSearch.setOnClickListener(onClickSearchArrow);
    mRecyclerView.setOnClickListener(onClickRecyclerView);
    mImgVoiceSearch.setOnClickListener(onClickVoiceSearch);
    mImgCloseSearch.setOnClickListener(onClickCloseSearch);

    mEdtSearch.setOnEditorActionListener(onEditorActionListener);
    mEdtSearch.addTextChangedListener(new OnTextWatcherEdtSearch());
}

From source file:co.nerdart.ourss.activity.EditFeedActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    UiUtils.setPreferenceTheme(this);
    super.onCreate(savedInstanceState);

    ActionBar actionBar = getActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);

    setContentView(R.layout.feed_edit);/*from   w  ww . jav  a  2  s.  co  m*/
    setResult(RESULT_CANCELED);

    Intent intent = getIntent();

    mNameEditText = (EditText) findViewById(R.id.feed_title);
    mUrlEditText = (EditText) findViewById(R.id.feed_url);
    mRetrieveFulltextCb = (CheckBox) findViewById(R.id.retrieve_fulltext);
    mFiltersListView = (ListView) findViewById(android.R.id.list);
    View filtersLayout = findViewById(R.id.filters_layout);
    View buttonLayout = findViewById(R.id.button_layout);

    if (intent.getAction().equals(Intent.ACTION_INSERT) || intent.getAction().equals(Intent.ACTION_SEND)) {
        setTitle(R.string.new_feed_title);

        filtersLayout.setVisibility(View.GONE);

        if (intent.hasExtra(Intent.EXTRA_TEXT)) {
            mUrlEditText.setText(intent.getStringExtra(Intent.EXTRA_TEXT));
        }

        restoreInstanceState(savedInstanceState);
    } else if (intent.getAction().equals(Intent.ACTION_EDIT)) {
        setTitle(R.string.edit_feed_title);

        buttonLayout.setVisibility(View.GONE);

        mFiltersCursorAdapter = new FiltersCursorAdapter(this, null);
        mFiltersListView.setAdapter(mFiltersCursorAdapter);
        mFiltersListView.setOnItemLongClickListener(new OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                startActionMode(mFilterActionModeCallback);
                mFiltersCursorAdapter.setSelectedFilter(position);
                mFiltersListView.invalidateViews();
                return true;
            }
        });

        getLoaderManager().initLoader(0, null, this);

        if (!restoreInstanceState(savedInstanceState)) {
            Cursor cursor = getContentResolver().query(intent.getData(), FEED_PROJECTION, null, null, null);

            if (cursor.moveToNext()) {
                mPreviousName = cursor.getString(0);
                mNameEditText.setText(mPreviousName);
                mUrlEditText.setText(cursor.getString(1));
                mRetrieveFulltextCb.setChecked(cursor.getInt(2) == 1);
                cursor.close();
            } else {
                cursor.close();
                Crouton.makeText(EditFeedActivity.this, R.string.error, Style.INFO);
                finish();
            }
        }
    }
}

From source file:android.support.designox.widget.Snackbar.java

final void showView() {
    if (mView.getParent() == null) {
        final ViewGroup.LayoutParams lp = mView.getLayoutParams();

        if (lp instanceof CoordinatorLayout.LayoutParams) {
            // If our LayoutParams are from a CoordinatorLayout, we'll setup our Behavior

            final Behavior behavior = new Behavior();
            behavior.setStartAlphaSwipeDistance(0.1f);
            behavior.setEndAlphaSwipeDistance(0.6f);
            behavior.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_START_TO_END);
            behavior.setListener(new SwipeDismissBehavior.OnDismissListener() {
                @Override/*from w w  w  . j a v a2s.c o m*/
                public void onDismiss(View view) {
                    view.setVisibility(View.GONE);
                    dispatchDismiss(Callback.DISMISS_EVENT_SWIPE);
                }

                @Override
                public void onDragStateChanged(int state) {
                    switch (state) {
                    case SwipeDismissBehavior.STATE_DRAGGING:
                    case SwipeDismissBehavior.STATE_SETTLING:
                        // If the view is being dragged or settling, cancel the timeout
                        SnackbarManager.getInstance().cancelTimeout(mManagerCallback);
                        break;
                    case SwipeDismissBehavior.STATE_IDLE:
                        // If the view has been released and is idle, restore the timeout
                        SnackbarManager.getInstance().restoreTimeout(mManagerCallback);
                        break;
                    }
                }
            });
            ((CoordinatorLayout.LayoutParams) lp).setBehavior(behavior);
        }

        mTargetParent.addView(mView);
    }

    mView.setOnAttachStateChangeListener(new SnackbarLayout.OnAttachStateChangeListener() {
        @Override
        public void onViewAttachedToWindow(View v) {
        }

        @Override
        public void onViewDetachedFromWindow(View v) {
            if (isShownOrQueued()) {
                // If we haven't already been dismissed then this event is coming from a
                // non-user initiated action. Hence we need to make sure that we callback
                // and keep our state up to date. We need to post the call since removeView()
                // will call through to onDetachedFromWindow and thus overflow.
                sHandler.post(new Runnable() {
                    @Override
                    public void run() {
                        onViewHidden(Callback.DISMISS_EVENT_MANUAL);
                    }
                });
            }
        }
    });

    if (ViewCompat.isLaidOut(mView)) {
        // If the view is already laid out, animate it now
        animateViewIn();
    } else {
        // Otherwise, add one of our layout change listeners and animate it in when laid out
        mView.setOnLayoutChangeListener(new SnackbarLayout.OnLayoutChangeListener() {
            @Override
            public void onLayoutChange(View view, int left, int top, int right, int bottom) {
                animateViewIn();
                mView.setOnLayoutChangeListener(null);
            }
        });
    }
}