use of com.taobao.weex.ui.component.WXComponentProp in project WeexErosFramework by bmfe.
the class BMCalendar method setMinDate.
@WXComponentProp(name = "minimumDate")
public void setMinDate(String minDate) {
if (TextUtils.isEmpty(minDate))
return;
this.mMinDate = minDate;
if (mBuilder != null) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(getDate(mMinDate));
mBuilder.setMinimumDate(calendar);
if (!TextUtils.isEmpty(mMaxDate)) {
Calendar maxCalendar = Calendar.getInstance();
maxCalendar.setTime(getDate(mMaxDate));
mBuilder.setMaximumDate(maxCalendar);
mBuilder.commit();
}
}
}
use of com.taobao.weex.ui.component.WXComponentProp in project WeexErosFramework by bmfe.
the class HookTextarea method setTintColor.
// benmu.org
@WXComponentProp(name = HookConstants.NAME.TINTCOLOR)
public void setTintColor(String tintColor) {
if (TextUtils.isEmpty(tintColor))
return;
try {
EditText editText = getHostView();
Field cursorDrawableRes = TextView.class.getDeclaredField("mCursorDrawableRes");
cursorDrawableRes.setAccessible(true);
int drawableId = cursorDrawableRes.getInt(editText);
Field mEditor = TextView.class.getDeclaredField("mEditor");
mEditor.setAccessible(true);
Object editor = mEditor.get(editText);
Class<?> clazz = editor.getClass();
Field mCursorDrawable = clazz.getDeclaredField("mCursorDrawable");
mCursorDrawable.setAccessible(true);
Drawable[] drawables = new Drawable[1];
drawables[0] = editText.getContext().getResources().getDrawable(drawableId);
drawables[0].setColorFilter(WXResourceUtils.getColor(tintColor), PorterDuff.Mode.SRC_IN);
mCursorDrawable.set(editor, drawables);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
use of com.taobao.weex.ui.component.WXComponentProp in project WeexErosFramework by bmfe.
the class HookWeb method setUrl.
@WXComponentProp(name = Constants.Name.SRC)
public void setUrl(String url) {
if (TextUtils.isEmpty(url) || getHostView() == null) {
return;
}
if (!TextUtils.isEmpty(url)) {
Uri ul = getInstance().rewriteUri(Uri.parse(url), URIAdapter.WEB);
if (LOCAL_SCHEME.equalsIgnoreCase(ul.getScheme())) {
String mUrl = "file://" + localPath(ul);
loadUrl(mUrl);
} else {
loadUrl(ul.toString());
}
}
}
use of com.taobao.weex.ui.component.WXComponentProp in project weex-example by KalicyZhou.
the class SimpleComponentHolder method getMethods.
static Pair<Map<String, Invoker>, Map<String, Invoker>> getMethods(Class clz) {
Map<String, Invoker> methods = new HashMap<>();
Map<String, Invoker> mInvokers = new HashMap<>();
Annotation[] annotations;
Annotation anno;
try {
for (Method method : clz.getMethods()) {
try {
annotations = method.getDeclaredAnnotations();
for (int i = 0, annotationsCount = annotations.length; i < annotationsCount; ++i) {
anno = annotations[i];
if (anno == null) {
continue;
}
if (anno instanceof WXComponentProp) {
String name = ((WXComponentProp) anno).name();
methods.put(name, new MethodInvoker(method, true));
break;
} else if (anno instanceof JSMethod) {
JSMethod methodAnno = (JSMethod) anno;
String name = methodAnno.alias();
if (JSMethod.NOT_SET.equals(name)) {
name = method.getName();
}
mInvokers.put(name, new MethodInvoker(method, methodAnno.uiThread()));
break;
}
}
} catch (ArrayIndexOutOfBoundsException | IncompatibleClassChangeError e) {
//ignore: getDeclaredAnnotations may throw this
}
}
} catch (IndexOutOfBoundsException e) {
e.printStackTrace();
//ignore: getMethods may throw this
}
return new Pair<>(methods, mInvokers);
}
use of com.taobao.weex.ui.component.WXComponentProp in project WeexErosFramework by bmfe.
the class BMCalendar method setMaxDate.
@WXComponentProp(name = "maximumDate")
public void setMaxDate(String maxDate) {
if (TextUtils.isEmpty(maxDate))
return;
this.mMaxDate = maxDate;
if (mBuilder != null) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(getDate(mMaxDate));
mBuilder.setMaximumDate(calendar);
if (!TextUtils.isEmpty(mMinDate)) {
Calendar minCalendar = Calendar.getInstance();
minCalendar.setTime(getDate(mMinDate));
mBuilder.setMinimumDate(minCalendar);
mBuilder.commit();
}
}
}
Aggregations