1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zhqhandsome-ZhqAndroidUtils

Клонировать/Скачать
README.md 8.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 06:16 0c3df0d

setTitleBarBackground(getResources().getDrawable(R.drawable.divider_bottom_gray_line))

.setBackDrawableLeftWidthHeight(24, 24)
.setFontLeftPadding(TitleBarLayout.LEFT, 10)
.setFontRightPadding(TitleBarLayout.RIGHT, 10)
.setTitleBarBackOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        finishActivity();
    }
})
.build();

if (rootView instanceof LinearLayout) { LinearLayout linearParent = (LinearLayout) rootView; linearParent.addView(titleBarLayout, 0); } else if (rootView instanceof RelativeLayout) { RelativeLayout relativeParent = (RelativeLayout) rootView;

titleBarLayout.setId(R.id.titleBar_id);
relativeParent.addView(titleBarLayout, 0);

View view = relativeParent.getChildAt(1);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) view.getLayoutParams();
params.addRule(RelativeLayout.BELOW, R.id.titleBar_id);
view.setLayoutParams(params);

}


**TabBarIndicatorLayout**

```<com.zhq.apputil.widget.TabBarIndicatorLayout
    android:id="@+id/stl"
    android:layout_width="match_parent"
    android:layout_height="48dp"
    app:tab_count="8"
    android:background="#30394D">

slidingTabLayout.setTabBarIndicator(new TabBarItemBean.Builder() .setSelectPosition(0) .setTabBarNormalColor("#ffffff") .setTabBarPressedColor("#ffffff") .setTabBarIndicatorColor("#00B0FF") .setTabBarSelectFontSize(14) .setTabBarUnSelectFontSize(13) .setTabBarScrolled(true) .setTabBarIndicatorHeight(ScreenUtils.dpToPx(getResources(), 2)) .setTabBarTitle(mTitles) .setTabBarPressedType(new Integer[]{AppConstant.WorkOrder.GET_ALL, AppConstant.WorkOrder.WAIT_AUDIT, AppConstant.WorkOrder.WAIT_RECEIVER, AppConstant.WorkOrder.HAVE_IN_HAND, AppConstant.WorkOrder.WAIT_SURE, AppConstant.WorkOrder.ALREADY_COMPLETED, AppConstant.WorkOrder.ALREADY_EXIT, AppConstant.WorkOrder.AUDIT_REJECT}) .setTabBarViewPager(mViewPager) .build() ).show();

ScrollViewPagerAdapter mAdapter = new ScrollViewPagerAdapter(getChildFragmentManager(), mFragments, mTitles); mViewPager.setAdapter(mAdapter);


**ImageSelector**

```// 缺少权限时, 进入权限配置页面
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M
&& ContextCompat.checkSelfPermission(mContext, android.Manifest.permission.READ_CONTACTS)
!= PackageManager.PERMISSION_GRANTED) {
    ActivityCompat.requestPermissions(getActivity(),
    new String[]{android.Manifest.permission.READ_CONTACTS,
    android.Manifest.permission.WRITE_CONTACTS, android.Manifest.permission.CAMERA}
    , PermissionManage.SDK_PERMISSION_REQUEST);
} else {
    ImageConfig imageConfig = new ImageConfig.Builder(
    new GlideLoader())
    .steepToolBarColor(getResources().getColor(R.color.colorPrimary))
    .titleBgColor(getResources().getColor(R.color.colorPrimary))
    .titleSubmitTextColor(getResources().getColor(R.color.white))
    .titleTextColor(getResources().getColor(R.color.white))
    .setTitleImageResource(R.drawable.ic_arrow_back_white_24dp)
    .mutiSelect()
    .singleSelect()
    .pathList(new ArrayList<>())
    .filePath(new
``` **StringBuilder(File.separator).append("com.cndz").append(File.separator).append("ImageTemp").toString())
                    .showCamera()
                    .crop()
                    .requestCode(BasePresenter.REQUEST_Gallery_CODE)
                    .build();**

В данном фрагменте кода на языке Java создаётся экземпляр класса StringBuilder, к которому последовательно добавляются строки с использованием метода append(). Затем вызывается метод toString(), который преобразует содержимое StringBuilder в строку. После этого вызываются методы showCamera(), crop() и requestCode(). В конце вызывается метод build().

*Контекст:* Данный фрагмент кода может быть частью более крупного приложения, которое выполняет операции с изображениями.

**ImageSelector.open(getActivity(), imageConfig); // 开启图片选择ка**

Данный фрагмент кода на языке Kotlin вызывает метод open() у объекта ImageSelector, передавая ему в качестве параметров контекст (getActivity()) и объект imageConfig. Метод open() открывает окно выбора изображений.

*Контекст:* Этот фрагмент кода также может быть частью приложения, связанного с обработкой изображений.

**MultiImageView**

<com.zhq.apputil.widget.MultiImageView android:id="@+id/multiImageView" android:layout_width="match_parent" android:layout_height="wrap_content" app:multi_border_color="@color/white" app:multi_border_overlay="true" app:multi_border_width="1dp" app:multi_overlay_radius="5dp" app:multi_right_bottom_corner="true" app:multi_right_top_corner="true" app:multi_top_bottom_corner="true" app:multi_top_left_corner="true"/>


Этот фрагмент представляет собой XML-разметку для элемента MultiImageView. Он определяет идентификатор элемента, его ширину и высоту, а также различные параметры отображения.

*Контекст:* Это часть макета экрана приложения.

**AppleRefreshView**

<com.zhq.apputil.widget.AppleRefreshView android:id="@+id/refresh_view" android:layout_width="match_parent" android:layout_height="match_parent">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/recyclerView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scrollbars="none"/>
</com.zhq.apputil.widget.AppleRefreshView>

Это ещё один фрагмент XML-разметки, определяющий элемент AppleRefreshView. Внутри него находится RecyclerView.

*Контекст:* Часть макета экрана приложения.

**SkeletonScreen**

dependencies {

      //骨架屏

implementation 'com.ethanhua:skeleton:1.1.2' implementation 'io.supercharge:shimmerlayout:2.1.0' }

//recyclerAdapter使用 NewsAdapter adapter = new NewsAdapter(); final SkeletonScreen skeletonScreen = Skeleton.bind(recyclerView) .adapter(adapter) .shimmer(true) .angle(20) .frozen(false) .duration(1200) .count(10) .load(R.layout.item_skeleton_news) .show(); //default count is 10 recyclerView.postDelayed(new Runnable() { @Override public void run() {


Здесь определяются зависимости проекта от библиотек skeleton и shimmerlayout, затем создаётся объект SkeletonScreen и настраиваются его параметры. В конце вызывается метод show().

*Контекст:* Код, связанный с отображением скелетон-экрана в приложении. ```
skeletonScreen.hide();//隐藏骨架屏
                }
            }, 3000);

//activity中的使用
   View rootView = findViewById(R.id.rootView);//注册根目录
    SkeletonScreen  skeletonScreen = Skeleton.bind(rootView)
                    .load(R.layout.activity_view_skeleton)//给用户看到的加载item
                    .duration(1000)
                    .color(R.color.shimmer_color)
                    .angle(0)
                    .show();
  1. GifView
//布局加载使用
  <com.zhq.apputil.widget.GifView
        android:id="@+id/gif_view"
        android:layout_width="50dp"
        android:layout_height="60dp"
        app:gif="@drawable/get_fire"/>

//对外提供方法
    setMovieResouce(int movieResId);
    setMovieTime(int time);
    setPaused(boolean paused);
    boolean isPaused();

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zhqhandsome-ZhqAndroidUtils.git
git@api.gitlife.ru:oschina-mirror/zhqhandsome-ZhqAndroidUtils.git
oschina-mirror
zhqhandsome-ZhqAndroidUtils
zhqhandsome-ZhqAndroidUtils
master