Moved getting icon for selected and unselected to background thread
This commit is contained in:
parent
0273672e71
commit
3d7b0fde40
@ -126,7 +126,6 @@ public class GalleryAdapter extends RecyclerView.Adapter<GalleryAdapter.StupidHo
|
||||
@Override
|
||||
public void run() {
|
||||
notifyDataSetChanged();
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -5,6 +5,7 @@ import android.graphics.drawable.Drawable;
|
||||
import android.util.Log;
|
||||
|
||||
import com.facebook.react.bridge.Promise;
|
||||
import com.facebook.react.bridge.ReactContext;
|
||||
import com.facebook.react.bridge.ReactMethod;
|
||||
import com.facebook.react.bridge.ReadableArray;
|
||||
import com.facebook.react.bridge.ReadableMap;
|
||||
@ -24,6 +25,7 @@ import javax.annotation.Nullable;
|
||||
public class GalleryViewManager extends SimpleViewManager<GalleryView> {
|
||||
|
||||
public static final int COMMAND_REFRESH_GALLERY = 1;
|
||||
private ThemedReactContext reactContext;
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
@ -32,6 +34,7 @@ public class GalleryViewManager extends SimpleViewManager<GalleryView> {
|
||||
|
||||
@Override
|
||||
protected GalleryView createViewInstance(ThemedReactContext reactContext) {
|
||||
this.reactContext = reactContext;
|
||||
return new GalleryView(reactContext);
|
||||
}
|
||||
|
||||
@ -65,15 +68,35 @@ public class GalleryViewManager extends SimpleViewManager<GalleryView> {
|
||||
}
|
||||
|
||||
@ReactProp(name = "selectedImageIcon")
|
||||
public void setSelectedImage(GalleryView view, String imageSource) {
|
||||
Drawable drawable = ResourceDrawableIdHelper.getIcon(view.getContext(), imageSource);
|
||||
view.setSelectedDrawable(drawable);
|
||||
public void setSelectedImage(final GalleryView view, final String imageSource) {
|
||||
new Thread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
final Drawable drawable = ResourceDrawableIdHelper.getIcon(view.getContext(), imageSource);
|
||||
reactContext.runOnUiQueueThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
view.setSelectedDrawable(drawable);
|
||||
}
|
||||
});
|
||||
}
|
||||
}).start();
|
||||
}
|
||||
|
||||
@ReactProp(name = "unSelectedImageIcon")
|
||||
public void setUnelectedImage(GalleryView view, String imageSource) {
|
||||
Drawable drawable = ResourceDrawableIdHelper.getIcon(view.getContext(), imageSource);
|
||||
view.setUnselectedDrawable(drawable);
|
||||
public void setUnselectedImage(final GalleryView view, final String imageSource) {
|
||||
new Thread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
final Drawable drawable = ResourceDrawableIdHelper.getIcon(view.getContext(), imageSource);
|
||||
reactContext.runOnUiQueueThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
view.setUnselectedDrawable(drawable);
|
||||
}
|
||||
});
|
||||
}
|
||||
}).start();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
Loading…
Reference in New Issue
Block a user