onFinishTemporaryDetach ( )源码实例Demo

android.view.View#onFinishTemporaryDetach ( )源码实例Demo

下面列出了android.view.View#onFinishTemporaryDetach ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: adt-leanback-support   文件: ViewCompat.java
@Override
public void dispatchFinishTemporaryDetach(View view) {
    if (!mTempDetachBound) {
        bindTempDetach();
    }
    if (mDispatchFinishTemporaryDetach != null) {
        try {
            mDispatchFinishTemporaryDetach.invoke(view);
        } catch (Exception e) {
            Log.d(TAG, "Error calling dispatchFinishTemporaryDetach", e);
        }
    } else {
        // Try this instead
        view.onFinishTemporaryDetach();
    }
}
 
源代码2 项目: letv   文件: ViewCompat.java
public void dispatchFinishTemporaryDetach(View view) {
    if (!this.mTempDetachBound) {
        bindTempDetach();
    }
    if (this.mDispatchFinishTemporaryDetach != null) {
        try {
            this.mDispatchFinishTemporaryDetach.invoke(view, new Object[0]);
            return;
        } catch (Exception e) {
            Log.d("ViewCompat", "Error calling dispatchFinishTemporaryDetach", e);
            return;
        }
    }
    view.onFinishTemporaryDetach();
}
 
源代码3 项目: SimplifyReader   文件: PLAAbsListView.java
private void dispatchFinishTemporaryDetach(View v) {
    if( v == null )
        return;

    v.onFinishTemporaryDetach();
    if( v instanceof ViewGroup){
        ViewGroup group = (ViewGroup) v;
        final int count = group.getChildCount();
        for (int i = 0; i < count; i++) {
            dispatchFinishTemporaryDetach(group.getChildAt(i));
        }			
    }
}
 
源代码4 项目: Lay-s   文件: PLAAbsListView.java
private void dispatchFinishTemporaryDetach(View v) {
    if( v == null )
        return;

    v.onFinishTemporaryDetach();
    if( v instanceof ViewGroup){
        ViewGroup group = (ViewGroup) v;
        final int count = group.getChildCount();
        for (int i = 0; i < count; i++) {
            dispatchFinishTemporaryDetach(group.getChildAt(i));
        }			
    }
}
 
源代码5 项目: EverMemo   文件: PLA_AbsListView.java
private void dispatchFinishTemporaryDetach(View v) {
	if( v == null )
		return;

	v.onFinishTemporaryDetach();
	if( v instanceof ViewGroup){
		ViewGroup group = (ViewGroup) v;
		final int count = group.getChildCount();
		for (int i = 0; i < count; i++) {
			dispatchFinishTemporaryDetach(group.getChildAt(i));
		}			
	}
}
 
源代码6 项目: recent-images   文件: TwoWayAbsListView.java
/**
 * Get a view and have it show the data associated with the specified
 * position. This is called when we have already discovered that the view is
 * not available for reuse in the recycle bin. The only choices left are
 * converting an old view or making a new one.
 *
 * @param position The position to display
 * @param isScrap Array of at least 1 boolean, the first entry will become true if
 *                the returned view was taken from the scrap heap, false if otherwise.
 * 
 * @return A view displaying the data associated with the specified position
 */
View obtainView(int position, boolean[] isScrap) {
	isScrap[0] = false;
	View scrapView;

	scrapView = mRecycler.getScrapView(position);

	View child;
	if (scrapView != null) {
		if (ViewDebug.TRACE_RECYCLER) {
			ViewDebug.trace(scrapView, ViewDebug.RecyclerTraceType.RECYCLE_FROM_SCRAP_HEAP,
					position, -1);
		}

		child = mAdapter.getView(position, scrapView, this);

		if (ViewDebug.TRACE_RECYCLER) {
			ViewDebug.trace(child, ViewDebug.RecyclerTraceType.BIND_VIEW,
					position, getChildCount());
		}

		if (child != scrapView) {
			mRecycler.addScrapView(scrapView);
			if (mCacheColorHint != 0) {
				child.setDrawingCacheBackgroundColor(mCacheColorHint);
			}
			if (ViewDebug.TRACE_RECYCLER) {
				ViewDebug.trace(scrapView, ViewDebug.RecyclerTraceType.MOVE_TO_SCRAP_HEAP,
						position, -1);
			}
		} else {
			isScrap[0] = true;
			child.onFinishTemporaryDetach();
		}
	} else {
		child = mAdapter.getView(position, null, this);
		if (mCacheColorHint != 0) {
			child.setDrawingCacheBackgroundColor(mCacheColorHint);
		}
		if (ViewDebug.TRACE_RECYCLER) {
			ViewDebug.trace(child, ViewDebug.RecyclerTraceType.NEW_VIEW,
					position, getChildCount());
		}
	}

	return child;
}
 
源代码7 项目: Klyph   文件: AbsHListView.java
/**
 * Get a view and have it show the data associated with the specified position. This is called when we have already discovered
 * that the view is not available for reuse in the recycle bin. The only choices left are converting an old view or making a new
 * one.
 * 
 * @param position
 *           The position to display
 * @param isScrap
 *           Array of at least 1 boolean, the first entry will become true if the returned view was taken from the scrap heap,
 *           false if otherwise.
 * 
 * @return A view displaying the data associated with the specified position
 */
@SuppressLint ( "NewApi" )
protected View obtainView( int position, boolean[] isScrap ) {
	isScrap[0] = false;
	View scrapView;

	scrapView = mRecycler.getTransientStateView( position );
	if ( scrapView != null ) {
		return scrapView;
	}

	scrapView = mRecycler.getScrapView( position );

	View child;
	if ( scrapView != null ) {
		child = mAdapter.getView( position, scrapView, this );

		if ( android.os.Build.VERSION.SDK_INT >= 16 ) {
			if ( child.getImportantForAccessibility() == IMPORTANT_FOR_ACCESSIBILITY_AUTO ) {
				child.setImportantForAccessibility( IMPORTANT_FOR_ACCESSIBILITY_YES );
			}
		}

		if ( child != scrapView ) {
			mRecycler.addScrapView( scrapView, position );
			if ( mCacheColorHint != 0 ) {
				child.setDrawingCacheBackgroundColor( mCacheColorHint );
			}
		} else {
			isScrap[0] = true;
			child.onFinishTemporaryDetach();
		}
	} else {
		child = mAdapter.getView( position, null, this );

		if ( android.os.Build.VERSION.SDK_INT >= 16 ) {
			if ( child.getImportantForAccessibility() == IMPORTANT_FOR_ACCESSIBILITY_AUTO ) {
				child.setImportantForAccessibility( IMPORTANT_FOR_ACCESSIBILITY_YES );
			}
		}

		if ( mCacheColorHint != 0 ) {
			child.setDrawingCacheBackgroundColor( mCacheColorHint );
		}
	}

	if ( mAdapterHasStableIds ) {
		final ViewGroup.LayoutParams vlp = child.getLayoutParams();
		LayoutParams lp;
		if ( vlp == null ) {
			lp = (LayoutParams) generateDefaultLayoutParams();
		} else if ( !checkLayoutParams( vlp ) ) {
			lp = (LayoutParams) generateLayoutParams( vlp );
		} else {
			lp = (LayoutParams) vlp;
		}
		lp.itemId = mAdapter.getItemId( position );
		child.setLayoutParams( lp );
	}

	if ( mAccessibilityManager.isEnabled() ) {
		if ( mAccessibilityDelegate == null ) {
			mAccessibilityDelegate = new ListItemAccessibilityDelegate();
		}

		// TODO: implement this ( hidden by google )
		// if (child.getAccessibilityDelegate() == null) {
		// child.setAccessibilityDelegate(mAccessibilityDelegate);
		// }
	}

	return child;
}
 
如果文章对您有帮助,请点击页面广告。以鼓励作者做出的努力。
 方法所在类
 同类方法