android.util.SparseArray#clear ( )源码实例Demo

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

源代码1 项目: MediaSDK   文件: CachedContentIndex.java
@Override
public void load(
    HashMap<String, CachedContent> content, SparseArray<@NullableType String> idToKey) {
  Assertions.checkState(!changed);
  if (!readFile(content, idToKey)) {
    content.clear();
    idToKey.clear();
    atomicFile.delete();
  }
}
 
源代码2 项目: android_9.0.0_r45   文件: AbsSpinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    final int count = scrapHeap.size();
    for (int i = 0; i < count; i++) {
        final View view = scrapHeap.valueAt(i);
        if (view != null) {
            removeDetachedView(view, true);
        }
    }
    scrapHeap.clear();
}
 
源代码3 项目: CSipSimple   文件: IcsAbsSpinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    final int count = scrapHeap.size();
    for (int i = 0; i < count; i++) {
        final View view = scrapHeap.valueAt(i);
        if (view != null) {
            removeDetachedView(view, true);
        }
    }
    scrapHeap.clear();
}
 
源代码4 项目: AndroidUSBCamera   文件: USBMonitor.java
/**
 * Close device
 * This also close interfaces if they are opened in Java side
 */
public synchronized void close() {
	if (DEBUG) Log.i(TAG, "UsbControlBlock#close:");

	if (mConnection != null) {
		final int n = mInterfaces.size();
		for (int i = 0; i < n; i++) {
			final SparseArray<UsbInterface> intfs = mInterfaces.valueAt(i);
			if (intfs != null) {
				final int m = intfs.size();
				for (int j = 0; j < m; j++) {
					final UsbInterface intf = intfs.valueAt(j);
					mConnection.releaseInterface(intf);
				}
				intfs.clear();
			}
		}
		mInterfaces.clear();
		mConnection.close();
		mConnection = null;
		final USBMonitor monitor = mWeakMonitor.get();
		if (monitor != null) {
			if (monitor.mOnDeviceConnectListener != null) {
				monitor.mOnDeviceConnectListener.onDisconnect(mWeakDevice.get(), UsbControlBlock.this);
			}
			monitor.mCtrlBlocks.remove(getDevice());
		}
	}
}
 
private <V> void copyTo(SparseArray<V> fromArray, SparseArray<V> toArray) {
    toArray.clear();

    for (int i = 0; i < fromArray.size(); i++) {
        toArray.append(fromArray.keyAt(i), fromArray.valueAt(i));
    }
}
 
源代码6 项目: libcommon   文件: USBMonitor.java
/**
 * デバイスを閉じる
 * Java内でインターフェースをopenして使う時は開いているインターフェースも閉じる
 */
public void close() {
	if (DEBUG) Log.i(TAG, "UsbControlBlock#close:");

	UsbDeviceConnection connection;
	synchronized (this) {
		connection = mConnection;
		mConnection = null;
	}
	if (connection != null) {
		// 2015/01/06 closeしてからonDisconnectを呼び出すように変更
		// openしているinterfaceが有れば閉じる XXX Java側でインターフェースを使う時
		final int n = mInterfaces.size();
		for (int i = 0; i < n; i++) {
			final SparseArray<UsbInterface> intfs = mInterfaces.valueAt(i);
			if (intfs != null) {
				final int m = intfs.size();
				for (int j = 0; j < m; j++) {
					final UsbInterface intf = intfs.valueAt(j);
					connection.releaseInterface(intf);
				}
				intfs.clear();
			}
		}
		mInterfaces.clear();
		connection.close();
		final USBMonitor monitor = getMonitor();
		final UsbDevice device = getDevice();
		if ((monitor != null) && (device != null)) {
			monitor.callOnDisconnect(device, this);
		}
	}
}
 
源代码7 项目: ForPDA   文件: NotificationsService.java
private void handlePendingEvents(NotificationEvent.Source source) {
    SparseArray<NotificationEvent> pending = pendingEvents.get(source);
    if (pending != null && pending.size() > 0) {
        List<NotificationEvent> events = new ArrayList<>();
        for (int i = 0; i < pending.size(); i++) {
            events.add(pending.valueAt(i));
        }
        hardHandleEvent(events, source);
        pending.clear();
    }
}
 
源代码8 项目: samples   文件: EcoGalleryAbsSpinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
   
    final int count = scrapHeap.size();
    for (int i = 0; i < count; i++) {
        final View view = scrapHeap.valueAt(i);
        if (view != null) {
            removeDetachedView(view, true);
        }
    }
               
    scrapHeap.clear();
}
 
源代码9 项目: DeviceConnect-Android   文件: USBMonitor.java
/**
 * Close device
 * This also close interfaces if they are opened in Java side
 */
public synchronized void close() {
	if (DEBUG) Log.i(TAG, "UsbControlBlock#close:");

	if (mConnection != null) {
		final int n = mInterfaces.size();
		for (int i = 0; i < n; i++) {
			final SparseArray<UsbInterface> intfs = mInterfaces.valueAt(i);
			if (intfs != null) {
				final int m = intfs.size();
				for (int j = 0; j < m; j++) {
					final UsbInterface intf = intfs.valueAt(j);
					mConnection.releaseInterface(intf);
				}
				intfs.clear();
			}
		}
		mInterfaces.clear();
		mConnection.close();
		mConnection = null;
		final USBMonitor monitor = mWeakMonitor.get();
		if (monitor != null) {
			if (monitor.mOnDeviceConnectListener != null) {
				monitor.mOnDeviceConnectListener.onDisconnect(mWeakDevice.get(), UsbControlBlock.this);
			}
			monitor.mCtrlBlocks.remove(getDevice());
		}
	}
}
 
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    final int count = scrapHeap.size();
    for (int i = 0; i < count; i++) {
        final View view = scrapHeap.valueAt(i);
        if (view != null) {
            removeDetachedView(view, true);
        }
    }
    scrapHeap.clear();
}
 
源代码11 项目: Telegram   文件: CachedContentIndex.java
@Override
public void load(
    HashMap<String, CachedContent> content, SparseArray<@NullableType String> idToKey) {
  Assertions.checkState(!changed);
  if (!readFile(content, idToKey)) {
    content.clear();
    idToKey.clear();
    atomicFile.delete();
  }
}
 
源代码12 项目: android-apps   文件: IcsAbsSpinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    final int count = scrapHeap.size();
    for (int i = 0; i < count; i++) {
        final View view = scrapHeap.valueAt(i);
        if (view != null) {
            removeDetachedView(view, true);
        }
    }
    scrapHeap.clear();
}
 
源代码13 项目: Telegram-FOSS   文件: CachedContentIndex.java
@Override
public void load(
    HashMap<String, CachedContent> content, SparseArray<@NullableType String> idToKey) {
  Assertions.checkState(!changed);
  if (!readFile(content, idToKey)) {
    content.clear();
    idToKey.clear();
    atomicFile.delete();
  }
}
 
源代码14 项目: zen4android   文件: IcsAbsSpinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    final int count = scrapHeap.size();
    for (int i = 0; i < count; i++) {
        final View view = scrapHeap.valueAt(i);
        if (view != null) {
            removeDetachedView(view, true);
        }
    }
    scrapHeap.clear();
}
 
源代码15 项目: MediaSDK   文件: CachedContentIndex.java
@Override
public void load(
    HashMap<String, CachedContent> content, SparseArray<@NullableType String> idToKey)
    throws IOException {
  Assertions.checkState(pendingUpdates.size() == 0);
  try {
    int version =
        VersionTable.getVersion(
            databaseProvider.getReadableDatabase(),
            VersionTable.FEATURE_CACHE_CONTENT_METADATA,
            hexUid);
    if (version != TABLE_VERSION) {
      SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
      writableDatabase.beginTransactionNonExclusive();
      try {
        initializeTable(writableDatabase);
        writableDatabase.setTransactionSuccessful();
      } finally {
        writableDatabase.endTransaction();
      }
    }

    try (Cursor cursor = getCursor()) {
      while (cursor.moveToNext()) {
        int id = cursor.getInt(COLUMN_INDEX_ID);
        String key = cursor.getString(COLUMN_INDEX_KEY);
        byte[] metadataBytes = cursor.getBlob(COLUMN_INDEX_METADATA);

        ByteArrayInputStream inputStream = new ByteArrayInputStream(metadataBytes);
        DataInputStream input = new DataInputStream(inputStream);
        DefaultContentMetadata metadata = readContentMetadata(input);

        CachedContent cachedContent = new CachedContent(id, key, metadata);
        content.put(cachedContent.key, cachedContent);
        idToKey.put(cachedContent.id, cachedContent.key);
      }
    }
  } catch (SQLiteException e) {
    content.clear();
    idToKey.clear();
    throw new DatabaseIOException(e);
  }
}
 
源代码16 项目: MDPreference   文件: Spinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    scrapHeap.clear();
}
 
源代码17 项目: FloatUtil   文件: WindowCache.java
public void clear(Class<? extends Context> cls) {
    SparseArray<Window> l2 = sWindows.remove(cls);
    if(l2 != null && l2.size() > 0) {
        l2.clear();
    }
}
 
源代码18 项目: material   文件: Spinner.java
void clear() {
    final SparseArray<View> scrapHeap = mScrapHeap;
    scrapHeap.clear();
}
 
源代码19 项目: Telegram-FOSS   文件: CachedContentIndex.java
@Override
public void load(
    HashMap<String, CachedContent> content, SparseArray<@NullableType String> idToKey)
    throws IOException {
  Assertions.checkState(pendingUpdates.size() == 0);
  try {
    int version =
        VersionTable.getVersion(
            databaseProvider.getReadableDatabase(),
            VersionTable.FEATURE_CACHE_CONTENT_METADATA,
            hexUid);
    if (version != TABLE_VERSION) {
      SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
      writableDatabase.beginTransaction();
      try {
        initializeTable(writableDatabase);
        writableDatabase.setTransactionSuccessful();
      } finally {
        writableDatabase.endTransaction();
      }
    }

    try (Cursor cursor = getCursor()) {
      while (cursor.moveToNext()) {
        int id = cursor.getInt(COLUMN_INDEX_ID);
        String key = cursor.getString(COLUMN_INDEX_KEY);
        byte[] metadataBytes = cursor.getBlob(COLUMN_INDEX_METADATA);

        ByteArrayInputStream inputStream = new ByteArrayInputStream(metadataBytes);
        DataInputStream input = new DataInputStream(inputStream);
        DefaultContentMetadata metadata = readContentMetadata(input);

        CachedContent cachedContent = new CachedContent(id, key, metadata);
        content.put(cachedContent.key, cachedContent);
        idToKey.put(cachedContent.id, cachedContent.key);
      }
    }
  } catch (SQLiteException e) {
    content.clear();
    idToKey.clear();
    throw new DatabaseIOException(e);
  }
}
 
源代码20 项目: Telegram   文件: CachedContentIndex.java
@Override
public void load(
    HashMap<String, CachedContent> content, SparseArray<@NullableType String> idToKey)
    throws IOException {
  Assertions.checkState(pendingUpdates.size() == 0);
  try {
    int version =
        VersionTable.getVersion(
            databaseProvider.getReadableDatabase(),
            VersionTable.FEATURE_CACHE_CONTENT_METADATA,
            hexUid);
    if (version != TABLE_VERSION) {
      SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
      writableDatabase.beginTransaction();
      try {
        initializeTable(writableDatabase);
        writableDatabase.setTransactionSuccessful();
      } finally {
        writableDatabase.endTransaction();
      }
    }

    try (Cursor cursor = getCursor()) {
      while (cursor.moveToNext()) {
        int id = cursor.getInt(COLUMN_INDEX_ID);
        String key = cursor.getString(COLUMN_INDEX_KEY);
        byte[] metadataBytes = cursor.getBlob(COLUMN_INDEX_METADATA);

        ByteArrayInputStream inputStream = new ByteArrayInputStream(metadataBytes);
        DataInputStream input = new DataInputStream(inputStream);
        DefaultContentMetadata metadata = readContentMetadata(input);

        CachedContent cachedContent = new CachedContent(id, key, metadata);
        content.put(cachedContent.key, cachedContent);
        idToKey.put(cachedContent.id, cachedContent.key);
      }
    }
  } catch (SQLiteException e) {
    content.clear();
    idToKey.clear();
    throw new DatabaseIOException(e);
  }
}