List of usage examples for android.content.res TypedArray getResourceId
@AnyRes public int getResourceId(@StyleableRes int index, int defValue)
From source file:br.liveo.searchliveo.SearchCardLiveo.java
public void build() { if (this.mSearchListener == null) { throw new ClassCastException(mContext.getString(R.string.warning_listener)); }//from www. j a v a 2 s .c om try { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { Resources.Theme theme = this.mContext.getTheme(); TypedArray typedArray = theme.obtainStyledAttributes(new int[] { android.R.attr.colorPrimaryDark }); setColorPrimaryDark(typedArray.getResourceId(0, 0)); } } catch (Exception e) { e.getStackTrace(); } }
From source file:com.todoroo.astrid.taskrabbit.TaskRabbitActivity.java
private int[] getPresetValues(int mode) { TypedArray arrays = getResources().obtainTypedArray(R.array.tr_default_type_array); int[] presetValues = getResources().getIntArray(arrays.getResourceId(mode, 0)); return presetValues; }
From source file:io.selendroid.server.model.DefaultSelendroidDriver.java
@Override @SuppressWarnings("deprecation") public byte[] takeScreenshot() { ViewHierarchyAnalyzer viewAnalyzer = ViewHierarchyAnalyzer.getDefaultInstance(); // TODO ddary review later, but with getRecentDecorView() it seems to work better // long drawingTime = 0; // View container = null; // for (View view : viewAnalyzer.getTopLevelViews()) { // if (view != null && view.isShown() && view.hasWindowFocus() // && view.getDrawingTime() > drawingTime) { // container = view; // drawingTime = view.getDrawingTime(); // }//w ww .j a v a 2 s .c o m // } // final View mainView = container; final View mainView = viewAnalyzer.getRecentDecorView(); if (mainView == null) { throw new SelendroidException("No open windows."); } done = false; long end = System.currentTimeMillis() + serverInstrumentation.getAndroidWait().getTimeoutInMillis(); final byte[][] rawPng = new byte[1][1]; ServerInstrumentation.getInstance().getCurrentActivity().runOnUiThread(new Runnable() { public void run() { synchronized (syncObject) { Display display = serverInstrumentation.getCurrentActivity().getWindowManager() .getDefaultDisplay(); Point size = new Point(); try { display.getSize(size); } catch (NoSuchMethodError ignore) { // Older than api level 13 size.x = display.getWidth(); size.y = display.getHeight(); } // Get root view View view = mainView.getRootView(); // Create the bitmap to use to draw the screenshot final Bitmap bitmap = Bitmap.createBitmap(size.x, size.y, Bitmap.Config.ARGB_8888); final Canvas canvas = new Canvas(bitmap); // Get current theme to know which background to use final Activity activity = serverInstrumentation.getCurrentActivity(); final Theme theme = activity.getTheme(); final TypedArray ta = theme .obtainStyledAttributes(new int[] { android.R.attr.windowBackground }); final int res = ta.getResourceId(0, 0); final Drawable background = activity.getResources().getDrawable(res); // Draw background background.draw(canvas); // Draw views view.draw(canvas); ByteArrayOutputStream stream = new ByteArrayOutputStream(); if (!bitmap.compress(Bitmap.CompressFormat.PNG, 70, stream)) { throw new RuntimeException("Error while compressing screenshot image."); } try { stream.flush(); stream.close(); } catch (IOException e) { throw new RuntimeException("I/O Error while capturing screenshot: " + e.getMessage()); } finally { Closeable closeable = (Closeable) stream; try { if (closeable != null) { closeable.close(); } } catch (IOException ioe) { // ignore } } rawPng[0] = stream.toByteArray(); mainView.destroyDrawingCache(); done = true; syncObject.notify(); } } }); waitForDone(end, serverInstrumentation.getAndroidWait().getTimeoutInMillis(), "Failed to take screenshot."); return rawPng[0]; }
From source file:android.support.v7.preference.PreferenceFragmentCompat.java
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { TypedArray a = mStyledContext.obtainStyledAttributes(null, R.styleable.PreferenceFragmentCompat, R.attr.preferenceFragmentCompatStyle, 0); mLayoutResId = a.getResourceId(R.styleable.PreferenceFragmentCompat_android_layout, mLayoutResId); final Drawable divider = a.getDrawable(R.styleable.PreferenceFragmentCompat_android_divider); final int dividerHeight = a .getDimensionPixelSize(R.styleable.PreferenceFragmentCompat_android_dividerHeight, -1); a.recycle();//from w w w . j av a2 s. c om // Need to theme the inflater to pick up the preferenceFragmentListStyle final TypedValue tv = new TypedValue(); getActivity().getTheme().resolveAttribute(R.attr.preferenceTheme, tv, true); final int theme = tv.resourceId; final Context themedContext = new ContextThemeWrapper(inflater.getContext(), theme); final LayoutInflater themedInflater = inflater.cloneInContext(themedContext); final View view = themedInflater.inflate(mLayoutResId, container, false); final View rawListContainer = view.findViewById(AndroidResources.ANDROID_R_LIST_CONTAINER); if (!(rawListContainer instanceof ViewGroup)) { throw new RuntimeException("Content has view with id attribute " + "'android.R.id.list_container' that is not a ViewGroup class"); } final ViewGroup listContainer = (ViewGroup) rawListContainer; final RecyclerView listView = onCreateRecyclerView(themedInflater, listContainer, savedInstanceState); if (listView == null) { throw new RuntimeException("Could not create RecyclerView"); } mList = listView; listView.addItemDecoration(mDividerDecoration); setDivider(divider); if (dividerHeight != -1) { setDividerHeight(dividerHeight); } listContainer.addView(mList); mHandler.post(mRequestFocus); return view; }
From source file:androidx.mediarouter.app.MediaRouteButton.java
public MediaRouteButton(Context context, AttributeSet attrs, int defStyleAttr) { super(MediaRouterThemeHelper.createThemedButtonContext(context), attrs, defStyleAttr); context = getContext();/*from ww w . j ava2 s. co m*/ mRouter = MediaRouter.getInstance(context); mCallback = new MediaRouterCallback(); TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.MediaRouteButton, defStyleAttr, 0); mButtonTint = a.getColorStateList(R.styleable.MediaRouteButton_mediaRouteButtonTint); mMinWidth = a.getDimensionPixelSize(R.styleable.MediaRouteButton_android_minWidth, 0); mMinHeight = a.getDimensionPixelSize(R.styleable.MediaRouteButton_android_minHeight, 0); int remoteIndicatorResId = a.getResourceId(R.styleable.MediaRouteButton_externalRouteEnabledDrawable, 0); a.recycle(); if (remoteIndicatorResId != 0) { Drawable.ConstantState remoteIndicatorState = sRemoteIndicatorCache.get(remoteIndicatorResId); if (remoteIndicatorState != null) { setRemoteIndicatorDrawable(remoteIndicatorState.newDrawable()); } else { mRemoteIndicatorLoader = new RemoteIndicatorLoader(remoteIndicatorResId); mRemoteIndicatorLoader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } updateContentDescription(); setClickable(true); }
From source file:com.dragon.lib.IndicatorView.java
private void init(AttributeSet attrs, int defStyle) { final Resources res = getResources(); final int defaultIndicatorSelectedColor = res.getColor(R.color.indicator_selected); final int defaultIndicatorUnseletedColor = res.getColor(R.color.indicator_unselected); final float defaultWidth = res.getDimension(R.dimen.indicator_width); final float defaultIndicatorHeight = res.getDimension(R.dimen.indicator_line_height); final int defaultIndicatorBackground = res.getColor(R.color.indicator_backgroup); final int defaultPosition = CENTER; mIndicatorHeight = defaultIndicatorHeight; mIndicatorPaint.setStyle(Paint.Style.FILL); TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.ScrollImageView); mIndicatorSelectedColor = a.getColor(R.styleable.ScrollImageView_indicatorSelectedColor, defaultIndicatorSelectedColor); mIndicatorUnselectedColor = a.getColor(R.styleable.ScrollImageView_indicatorUnselectedColor, defaultIndicatorUnseletedColor); mIndicatorType = a.getInt(R.styleable.ScrollImageView_indicatorType, CIRCLE); mIndicatorBackground = a.getResourceId(R.styleable.ScrollImageView_indicatorBackground, defaultIndicatorBackground); mIndicatorPosition = a.getInt(R.styleable.ScrollImageView_indicatorPosition, defaultPosition); mIndicatorWidth = a.getDimension(R.styleable.ScrollImageView_indicatorWidth, defaultWidth); mIndicatorHeight = a.getDimension(R.styleable.ScrollImageView_indicatorHeight, defaultIndicatorHeight); a.recycle();/*from w ww . ja va 2s . com*/ mIndicatorPaint.setStrokeWidth(mIndicatorHeight); }
From source file:com.android.fastlibrary.ui.activity.swipeback.SwipeBackLayout.java
public SwipeBackLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs); mDragHelper = ViewDragHelper.create(this, new ViewDragCallback()); TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.SwipeBackLayout, defStyle, R.style.SwipeBackLayout);//w w w . j a v a 2s. com int edgeSize = a.getDimensionPixelSize(R.styleable.SwipeBackLayout_edge_size, -1); if (edgeSize > 0) { setEdgeSize(edgeSize); } int mode = EDGE_FLAGS[a.getInt(R.styleable.SwipeBackLayout_edge_flag, 0)]; setEdgeTrackingEnabled(mode); int shadowLeft = a.getResourceId(R.styleable.SwipeBackLayout_shadow_left, R.drawable.shadow_left); int shadowRight = a.getResourceId(R.styleable.SwipeBackLayout_shadow_right, R.drawable.shadow_right); int shadowBottom = a.getResourceId(R.styleable.SwipeBackLayout_shadow_bottom, R.drawable.shadow_bottom); setShadow(shadowLeft, EDGE_LEFT); setShadow(shadowRight, EDGE_RIGHT); setShadow(shadowBottom, EDGE_BOTTOM); a.recycle(); final float density = getResources().getDisplayMetrics().density; final float minVel = MIN_FLING_VELOCITY * density; mDragHelper.setMinVelocity(minVel); mDragHelper.setMaxVelocity(minVel * 2f); }
From source file:com.bowyoung.enhancelibrary.libs.swipeback.SwipeBackLayout.java
public SwipeBackLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs); mDragHelper = ViewDragHelper.create(this, new ViewDragCallback()); TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.SwipeBackLayout, defStyle, R.style.SwipeBackLayout);//from w w w.j ava 2 s. c om int edgeSize = a.getDimensionPixelSize(R.styleable.SwipeBackLayout_edge_size, -1); if (edgeSize > 0) setEdgeSize(edgeSize); int mode = EDGE_FLAGS[a.getInt(R.styleable.SwipeBackLayout_edge_flag, 0)]; setEdgeTrackingEnabled(mode); int shadowLeft = a.getResourceId(R.styleable.SwipeBackLayout_shadow_left, R.drawable.shadow_left); int shadowRight = a.getResourceId(R.styleable.SwipeBackLayout_shadow_right, R.drawable.shadow_right); int shadowBottom = a.getResourceId(R.styleable.SwipeBackLayout_shadow_bottom, R.drawable.shadow_bottom); setShadow(shadowLeft, EDGE_LEFT); setShadow(shadowRight, EDGE_RIGHT); setShadow(shadowBottom, EDGE_BOTTOM); a.recycle(); final float density = getResources().getDisplayMetrics().density; final float minVel = MIN_FLING_VELOCITY * density; mDragHelper.setMinVelocity(minVel); mDragHelper.setMaxVelocity(minVel * 2f); }
From source file:com.todoroo.astrid.taskrabbit.TaskRabbitActivity.java
private JSONObject defaultValuesToJSON(TypedArray keys, int[] presetValues) { JSONObject parameters = new JSONObject(); for (int i = 0; i < keys.length(); i++) { try {//from ww w . jav a2s .co m int arrayID = keys.getResourceId(i, 0); parameters.put(getString(arrayID), (presetValues[i])); } catch (JSONException e) { e.printStackTrace(); } } return parameters; }
From source file:co.lujun.popmenulayout.PopMenuLayout.java
private void initAttrs(Context context, AttributeSet attrs, int defStyleAttr) { TypedArray attributes = context.obtainStyledAttributes(attrs, R.styleable.PopMenuLayout, defStyleAttr, 0); mConfigJson = attributes.getString(R.styleable.PopMenuLayout_config_json); mLevel2MenuAnimStyle = attributes.getResourceId(R.styleable.PopMenuLayout_level2_menu_anim_style, mLevel2MenuAnimStyle);//from ww w .ja va 2 s . c o m mLevel1MenuItemHeight = attributes.getDimension(R.styleable.PopMenuLayout_level1_menu_item_height, Util.dp2px(context, mLevel1MenuItemHeight)); mChildMenuItemHeight = attributes.getDimension(R.styleable.PopMenuLayout_child_menu_item_height, Util.dp2px(context, mChildMenuItemHeight)); isWithLevel1MenuWidth = attributes.getBoolean(R.styleable.PopMenuLayout_cmenu_w_follow_level1_menu, isWithLevel1MenuWidth); mMenuDividerDp = attributes.getDimension(R.styleable.PopMenuLayout_menu_divider_width, Util.dp2px(context, mMenuDividerDp)); mMenuTextPaddingLeft = attributes.getDimension(R.styleable.PopMenuLayout_menu_left_padding, Util.dp2px(context, mMenuTextPaddingLeft)); mMenuTextPaddingRight = attributes.getDimension(R.styleable.PopMenuLayout_menu_right_padding, Util.dp2px(context, mMenuTextPaddingRight)); mMenuTextPaddingTop = attributes.getDimension(R.styleable.PopMenuLayout_menu_top_padding, Util.dp2px(context, mMenuTextPaddingTop)); mMenuTextPaddingBottom = attributes.getDimension(R.styleable.PopMenuLayout_menu_bottom_padding, Util.dp2px(context, mMenuTextPaddingBottom)); mDividerColor = attributes.getColor(R.styleable.PopMenuLayout_menu_divider_color, mDividerColor); mExpandableIcon = attributes.getResourceId(R.styleable.PopMenuLayout_menu_expandable_icon, mExpandableIcon); mMenuTextColor = attributes.getColor(R.styleable.PopMenuLayout_menu_text_color, mMenuTextColor); mHorizontalMenuBackgroundRes = attributes.getResourceId(R.styleable.PopMenuLayout_horizontal_menu_bg, mHorizontalMenuBackgroundRes); mVerticalMenuBackgroundRes = attributes.getResourceId(R.styleable.PopMenuLayout_vertical_menu_bg, mVerticalMenuBackgroundRes); mMenuTextSize = attributes.getDimension(R.styleable.PopMenuLayout_menu_text_size, Util.sp2px(context, mMenuTextSize)); mMaxMenuItemCount = attributes.getInteger(R.styleable.PopMenuLayout_child_menu_max_count, mMaxMenuItemCount); mLevel1MenuLayoutBgColor = attributes.getColor(R.styleable.PopMenuLayout_level1_menu_layout_bg_color, mLevel1MenuLayoutBgColor); mChildMenuLayoutBgColor = attributes.getColor(R.styleable.PopMenuLayout_cmenu_layout_bg_color, mChildMenuLayoutBgColor); mDividerMarginLeft = attributes.getDimension(R.styleable.PopMenuLayout_divider_margin_left, Util.dp2px(context, mDividerMarginLeft)); mDividerMarginRight = attributes.getDimension(R.styleable.PopMenuLayout_divider_margin_right, Util.dp2px(context, mDividerMarginRight)); mDividerMarginTop = attributes.getDimension(R.styleable.PopMenuLayout_divider_margin_top, Util.dp2px(context, mDividerMarginTop)); mDividerMarginBottom = attributes.getDimension(R.styleable.PopMenuLayout_divider_margin_bottom, Util.dp2px(context, mDividerMarginBottom)); attributes.recycle(); }