补充美颜模型和美颜配置

This commit is contained in:
2022-09-19 15:43:06 +08:00
parent 8ef917ebb6
commit c634d29e79
365 changed files with 5751 additions and 1296 deletions

View File

@@ -7,6 +7,8 @@ import android.view.View;
import android.widget.LinearLayout;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.yunbao.faceunity.R;
@@ -17,6 +19,9 @@ import com.yunbao.faceunity.control.MakeupControlView;
import com.yunbao.faceunity.control.PropControlView;
import com.yunbao.faceunity.data.FaceUnityDataFactory;
import java.util.HashMap;
import java.util.Map;
/**
* DESC
* Created on 2021/4/26
@@ -24,6 +29,7 @@ import com.yunbao.faceunity.data.FaceUnityDataFactory;
public class FaceUnityView extends LinearLayout {
private Context mContext;
private RecyclerView menuGroup;
public FaceUnityView(Context context) {
super(context);
@@ -67,36 +73,15 @@ public class FaceUnityView extends LinearLayout {
*/
public void bindDataFactory(FaceUnityDataFactory dataFactory) {
mDataFactory = dataFactory;
mFaceBeautyControlView.bindDataFactory(dataFactory.mFaceBeautyDataFactory);
mMakeupControlView.bindDataFactory(dataFactory.mMakeupDataFactory);
mPropControlView.bindDataFactory(dataFactory.mPropDataFactory);
mBodyBeautyControlView.bindDataFactory(dataFactory.mBodyBeautyDataFactory);
switch (dataFactory.currentFunctionIndex) {
case 0:
mCheckGroupView.check(R.id.radio_beauty);
break;
case 1:
mCheckGroupView.check(R.id.radio_sticker);
break;
case 2:
mCheckGroupView.check(R.id.radio_makeup);
break;
case 3:
mCheckGroupView.check(R.id.radio_body);
break;
}
}
/**
* 初始化View
*/
private void initView() {
mCheckGroupView = findViewById(R.id.group_function);
mFaceBeautyControlView = findViewById(R.id.control_beauty);
mMakeupControlView = findViewById(R.id.control_makeup);
mPropControlView = findViewById(R.id.control_prop);
mBodyBeautyControlView = findViewById(R.id.control_body);
lineView = findViewById(R.id.line);
menuGroup=findViewById(R.id.menu_group);
initMenuGroup();
}
@@ -104,23 +89,7 @@ public class FaceUnityView extends LinearLayout {
* 底部功能菜单切换
*/
private void bindBottomView() {
mCheckGroupView.setOnCheckedChangeListener((group, checkedId) -> {
if (checkedId == R.id.radio_beauty) {
showFunction(0);
mDataFactory.onFunctionSelected(0);
} else if (checkedId == R.id.radio_sticker) {
showFunction(1);
mDataFactory.onFunctionSelected(1);
} else if (checkedId == R.id.radio_makeup) {
showFunction(2);
mDataFactory.onFunctionSelected(2);
} else if (checkedId == R.id.radio_body) {
showFunction(3);
mDataFactory.onFunctionSelected(3);
} else {
showFunction(-1);
}
});
}
/**
@@ -129,12 +98,19 @@ public class FaceUnityView extends LinearLayout {
* @param index Int
*/
private void showFunction(int index) {
mFaceBeautyControlView.setVisibility((index == 0) ? View.VISIBLE : View.GONE);
mPropControlView.setVisibility((index == 1) ? View.VISIBLE : View.GONE);
mMakeupControlView.setVisibility((index == 2) ? View.VISIBLE : View.GONE);
mBodyBeautyControlView.setVisibility((index == 3) ? View.VISIBLE : View.GONE);
lineView.setVisibility((index != -1) ? View.VISIBLE : View.GONE);
}
private void initMenuGroup(){
menuGroup.setLayoutManager(new GridLayoutManager(mContext,4));
Map<Integer,Integer> layoutItem=new HashMap<>();
layoutItem.put(R.string.home_function_name_beauty,R.mipmap.ico_home_beauty);
layoutItem.put(R.string.home_function_name_makeup,R.mipmap.ico_home_makeup);
layoutItem.put(R.string.home_function_name_beauty_body,R.mipmap.ico_home_beauty_body);
layoutItem.put(R.string.home_function_name_beauty_body,R.mipmap.ico_home_beauty_body);
layoutItem.put(R.string.home_function_name_big_head,R.mipmap.ico_home_big_head);
layoutItem.put(R.string.home_function_name_animoji,R.mipmap.ico_home_animoji);
layoutItem.put(R.string.home_function_name_sticker,R.mipmap.ico_home_sticker);
layoutItem.put(R.string.home_function_name_fine_sticker,R.mipmap.ico_home_fine_sticker);
}
}

View File

@@ -0,0 +1,17 @@
package com.yunbao.faceunity.ui.fragments;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import androidx.annotation.Nullable;
import com.yunbao.faceunity.dialog.BaseDialogFragment;
public class FaceContainerFragment extends BaseDialogFragment {
@Override
protected View createDialogView(LayoutInflater inflater, @Nullable ViewGroup container) {
return new LinearLayout(inflater.getContext());
}
}