From 93acf4c8c6eb481feac11fc47c3f9df2ac6304d4 Mon Sep 17 00:00:00 2001 From: zlzw <583819556@qq.com> Date: Wed, 27 Sep 2023 14:37:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=961v1=E8=AF=AD?= =?UTF-8?q?=E8=81=8A=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- OneToOne/.gitignore | 1 + OneToOne/build.gradle | 91 + OneToOne/consumer-rules.pro | 0 OneToOne/proguard-rules.pro | 21 + .../onetoone/ExampleInstrumentedTest.java | 26 + OneToOne/src/main/AndroidManifest.xml | 113 + .../java/com/shayu/onetoone/AppContext.java | 10 + .../onetoone/activitys/LauncherActivity.java | 18 + .../onetoone/activitys/MainActivity.java | 57 + .../activitys/fragments/BaseFragment.java | 7 + .../activitys/fragments/DynamicFragment.java | 20 + .../activitys/fragments/FriendsFragment.java | 20 + .../activitys/fragments/MessageFragment.java | 20 + .../activitys/fragments/MyFragment.java | 20 + .../src/main/res/drawable/tab_dynamic.xml | 5 + .../src/main/res/drawable/tab_friends.xml | 13 + OneToOne/src/main/res/drawable/tab_msg.xml | 5 + OneToOne/src/main/res/drawable/tab_my.xml | 5 + .../src/main/res/layout/activity_launcher.xml | 10 + .../src/main/res/layout/activity_main.xml | 58 + .../src/main/res/layout/fragment_dynamic.xml | 15 + .../src/main/res/layout/fragment_friends.xml | 17 + OneToOne/src/main/res/layout/fragment_msg.xml | 15 + OneToOne/src/main/res/layout/fragment_my.xml | 15 + .../main/res/mipmap-xxhdpi/ic_tab_dynamic.png | Bin 0 -> 5861 bytes .../mipmap-xxhdpi/ic_tab_dynamic_select.png | Bin 0 -> 5909 bytes .../main/res/mipmap-xxhdpi/ic_tab_friends.png | Bin 0 -> 5333 bytes .../mipmap-xxhdpi/ic_tab_friends_select.png | Bin 0 -> 6107 bytes .../src/main/res/mipmap-xxhdpi/ic_tab_msg.png | Bin 0 -> 5041 bytes .../res/mipmap-xxhdpi/ic_tab_msg_select.png | Bin 0 -> 6082 bytes .../src/main/res/mipmap-xxhdpi/ic_tab_my.png | Bin 0 -> 5659 bytes .../res/mipmap-xxhdpi/ic_tab_my_select.png | Bin 0 -> 6152 bytes .../src/main/res/values-zh-rHK/strings.xml | 4 + .../src/main/res/values-zh-rTW/strings.xml | 4 + OneToOne/src/main/res/values/strings.xml | 3 + .../com/shayu/onetoone/ExampleUnitTest.java | 17 + TabLayout/.gitignore | 1 + TabLayout/build.gradle | 30 + TabLayout/consumer-rules.pro | 0 TabLayout/proguard-rules.pro | 21 + TabLayout/src/main/AndroidManifest.xml | 2 + .../com/angcyo/tablayout/AbsDslDrawable.kt | 200 ++ .../com/angcyo/tablayout/DslBadgeDrawable.kt | 275 +++ .../angcyo/tablayout/DslGradientDrawable.kt | 306 +++ .../java/com/angcyo/tablayout/DslGravity.kt | 215 ++ .../java/com/angcyo/tablayout/DslSelector.kt | 438 ++++ .../java/com/angcyo/tablayout/DslTabBadge.kt | 222 ++ .../java/com/angcyo/tablayout/DslTabBorder.kt | 279 +++ .../com/angcyo/tablayout/DslTabDivider.kt | 153 ++ .../com/angcyo/tablayout/DslTabHighlight.kt | 118 + .../com/angcyo/tablayout/DslTabIndicator.kt | 931 ++++++++ .../java/com/angcyo/tablayout/DslTabLayout.kt | 2043 +++++++++++++++++ .../angcyo/tablayout/DslTabLayoutConfig.kt | 526 +++++ .../com/angcyo/tablayout/ITabIndicatorDraw.kt | 22 + .../main/java/com/angcyo/tablayout/LibEx.kt | 334 +++ .../com/angcyo/tablayout/ViewPagerDelegate.kt | 21 + .../main/res/values/attr_dsl_tab_layout.xml | 299 +++ ViewPager2Delegate/.gitignore | 1 + ViewPager2Delegate/build.gradle | 34 + ViewPager2Delegate/consumer-rules.pro | 0 ViewPager2Delegate/proguard-rules.pro | 21 + .../src/main/AndroidManifest.xml | 2 + .../tablayout/delegate2/ViewPager2Delegate.kt | 66 + app/src/main/AndroidManifest.xml | 9 + common/src/main/AndroidManifest.xml | 10 +- .../src/main/res/mipmap-xxxhdpi/bg_kirin.png | Bin .../mipmap-xxxhdpi/icon_more_live_menu.png | Bin settings.gradle | 3 + 68 files changed, 7183 insertions(+), 9 deletions(-) create mode 100644 OneToOne/.gitignore create mode 100644 OneToOne/build.gradle create mode 100644 OneToOne/consumer-rules.pro create mode 100644 OneToOne/proguard-rules.pro create mode 100644 OneToOne/src/androidTest/java/com/shayu/onetoone/ExampleInstrumentedTest.java create mode 100644 OneToOne/src/main/AndroidManifest.xml create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/AppContext.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/LauncherActivity.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/MainActivity.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/BaseFragment.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/DynamicFragment.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/FriendsFragment.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MessageFragment.java create mode 100644 OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MyFragment.java create mode 100644 OneToOne/src/main/res/drawable/tab_dynamic.xml create mode 100644 OneToOne/src/main/res/drawable/tab_friends.xml create mode 100644 OneToOne/src/main/res/drawable/tab_msg.xml create mode 100644 OneToOne/src/main/res/drawable/tab_my.xml create mode 100644 OneToOne/src/main/res/layout/activity_launcher.xml create mode 100644 OneToOne/src/main/res/layout/activity_main.xml create mode 100644 OneToOne/src/main/res/layout/fragment_dynamic.xml create mode 100644 OneToOne/src/main/res/layout/fragment_friends.xml create mode 100644 OneToOne/src/main/res/layout/fragment_msg.xml create mode 100644 OneToOne/src/main/res/layout/fragment_my.xml create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_dynamic.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_dynamic_select.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_friends.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_friends_select.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_msg.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_msg_select.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_my.png create mode 100644 OneToOne/src/main/res/mipmap-xxhdpi/ic_tab_my_select.png create mode 100644 OneToOne/src/main/res/values-zh-rHK/strings.xml create mode 100644 OneToOne/src/main/res/values-zh-rTW/strings.xml create mode 100644 OneToOne/src/main/res/values/strings.xml create mode 100644 OneToOne/src/test/java/com/shayu/onetoone/ExampleUnitTest.java create mode 100644 TabLayout/.gitignore create mode 100644 TabLayout/build.gradle create mode 100644 TabLayout/consumer-rules.pro create mode 100644 TabLayout/proguard-rules.pro create mode 100644 TabLayout/src/main/AndroidManifest.xml create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/AbsDslDrawable.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslBadgeDrawable.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslGradientDrawable.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslGravity.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslSelector.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabBadge.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabBorder.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabDivider.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabHighlight.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabIndicator.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabLayout.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/DslTabLayoutConfig.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/ITabIndicatorDraw.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/LibEx.kt create mode 100644 TabLayout/src/main/java/com/angcyo/tablayout/ViewPagerDelegate.kt create mode 100644 TabLayout/src/main/res/values/attr_dsl_tab_layout.xml create mode 100644 ViewPager2Delegate/.gitignore create mode 100644 ViewPager2Delegate/build.gradle create mode 100644 ViewPager2Delegate/consumer-rules.pro create mode 100644 ViewPager2Delegate/proguard-rules.pro create mode 100644 ViewPager2Delegate/src/main/AndroidManifest.xml create mode 100644 ViewPager2Delegate/src/main/java/com/angcyo/tablayout/delegate2/ViewPager2Delegate.kt rename {live => common}/src/main/res/mipmap-xxxhdpi/bg_kirin.png (100%) rename {live => common}/src/main/res/mipmap-xxxhdpi/icon_more_live_menu.png (100%) diff --git a/OneToOne/.gitignore b/OneToOne/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/OneToOne/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/OneToOne/build.gradle b/OneToOne/build.gradle new file mode 100644 index 000000000..12e2aebd0 --- /dev/null +++ b/OneToOne/build.gradle @@ -0,0 +1,91 @@ +apply plugin: 'com.android.application' +//apply plugin: 'com.android.library' +apply plugin: 'img-optimizer' +apply plugin: 'com.alibaba.arouter' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' + +android { + compileSdkVersion rootProject.ext.android.compileSdkVersion + buildToolsVersion rootProject.ext.android.buildToolsVersion + + + defaultConfig { + applicationId "com.shayu.onetoone" + minSdkVersion rootProject.ext.android.minSdkVersion + targetSdkVersion rootProject.ext.android.targetSdkVersion + versionCode rootProject.ext.android.versionCode + versionName rootProject.ext.android.versionName + manifestPlaceholders = rootProject.ext.manifestPlaceholders + ndk { + abiFilters "armeabi-v7a", "arm64-v8a" + } + } + aaptOptions { + cruncherEnabled = false + useNewCruncher = false + } + signingConfigs { + release { + keyAlias 'phonelive' + keyPassword 'phonelive' + storeFile file('../hdl.jks') + storePassword 'phonelive' + } + //陌陌本地配置需要 + config {//TODO BEAUTYSDK 这里需要配置keystore相关信息 + keyAlias 'phonelive' + keyPassword 'phonelive' + storeFile file('../hdl.jks')//keystore的存放路径 + storePassword 'phonelive' + v2SigningEnabled true // android 5.0-8.0,必须用V2,否则会有安全问题 + v1SigningEnabled true + } + } + buildTypes { + release { + minifyEnabled false + shrinkResources false + zipAlignEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.release + } + debug { + minifyEnabled false + shrinkResources false + zipAlignEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.release + } + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} +repositories { + flatDir { + dirs 'libs', '../libs' + } +} +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation rootProject.ext.dependencies["appcompat-androidx"] + implementation rootProject.ext.dependencies["recyclerview-androidx"] + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + //common + api project(path: ':common') + api project(path:':FaceUnity')//新娱美颜 + + api project(path:':TabLayout') + api project(path:':ViewPager2Delegate') + //implementation 'com.github.angcyo.DslTablayout:TabLayout:3.5.5' + //可选 + //implementation 'com.github.angcyo.DslTablayout:ViewPager2Delegate:3.5.5' + + //ExoPlayer,腾讯的播放器不支持无缝切换 + implementation 'com.google.android.exoplayer:exoplayer:2.18.5' + implementation 'com.google.android.exoplayer:exoplayer-core:2.18.5@aar' + +} diff --git a/OneToOne/consumer-rules.pro b/OneToOne/consumer-rules.pro new file mode 100644 index 000000000..e69de29bb diff --git a/OneToOne/proguard-rules.pro b/OneToOne/proguard-rules.pro new file mode 100644 index 000000000..481bb4348 --- /dev/null +++ b/OneToOne/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/OneToOne/src/androidTest/java/com/shayu/onetoone/ExampleInstrumentedTest.java b/OneToOne/src/androidTest/java/com/shayu/onetoone/ExampleInstrumentedTest.java new file mode 100644 index 000000000..5c42b5c1e --- /dev/null +++ b/OneToOne/src/androidTest/java/com/shayu/onetoone/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.shayu.onetoone; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.shayu.onetoone.test", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/OneToOne/src/main/AndroidManifest.xml b/OneToOne/src/main/AndroidManifest.xml new file mode 100644 index 000000000..98b9c583b --- /dev/null +++ b/OneToOne/src/main/AndroidManifest.xml @@ -0,0 +1,113 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java b/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java new file mode 100644 index 000000000..4d4843585 --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java @@ -0,0 +1,10 @@ +package com.shayu.onetoone; + +import androidx.multidex.MultiDexApplication; + +public class AppContext extends MultiDexApplication { + @Override + public void onCreate() { + super.onCreate(); + } +} diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/LauncherActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/LauncherActivity.java new file mode 100644 index 000000000..e2420f406 --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/LauncherActivity.java @@ -0,0 +1,18 @@ +package com.shayu.onetoone.activitys; + +import androidx.appcompat.app.AppCompatActivity; + +import android.content.Intent; +import android.os.Bundle; + +import com.shayu.onetoone.R; + +public class LauncherActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_launcher); + startActivity(new Intent(this, MainActivity.class)); + } +} \ No newline at end of file diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/MainActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/MainActivity.java new file mode 100644 index 000000000..86b25d080 --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/MainActivity.java @@ -0,0 +1,57 @@ +package com.shayu.onetoone.activitys; + +import androidx.annotation.NonNull; +import androidx.appcompat.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.viewpager2.adapter.FragmentStateAdapter; +import androidx.viewpager2.widget.ViewPager2; + +import android.os.Bundle; + +import com.angcyo.tablayout.DslTabLayout; +import com.angcyo.tablayout.delegate2.ViewPager2Delegate; +import com.shayu.onetoone.R; +import com.shayu.onetoone.activitys.fragments.BaseFragment; +import com.shayu.onetoone.activitys.fragments.DynamicFragment; +import com.shayu.onetoone.activitys.fragments.FriendsFragment; +import com.shayu.onetoone.activitys.fragments.MessageFragment; +import com.shayu.onetoone.activitys.fragments.MyFragment; + +import java.util.ArrayList; +import java.util.List; + +public class MainActivity extends AppCompatActivity { + List fragments = new ArrayList<>(); + private ViewPager2 viewPager; + private DslTabLayout dslTabLayout; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); + + fragments.add(new FriendsFragment()); + fragments.add(new DynamicFragment()); + fragments.add(new MessageFragment()); + fragments.add(new MyFragment()); + + viewPager = findViewById(R.id.viewPager); + dslTabLayout = findViewById(R.id.dslTabLayout); + + viewPager.setAdapter(new FragmentStateAdapter(this) { + @NonNull + @Override + public Fragment createFragment(int position) { + return fragments.get(position); + } + + @Override + public int getItemCount() { + return fragments.size(); + } + }); + + ViewPager2Delegate.Companion.install(viewPager, dslTabLayout, false); + + } +} \ No newline at end of file diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/BaseFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/BaseFragment.java new file mode 100644 index 000000000..f6b121d9c --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/BaseFragment.java @@ -0,0 +1,7 @@ +package com.shayu.onetoone.activitys.fragments; + +import androidx.fragment.app.Fragment; + +public class BaseFragment extends Fragment { + +} diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/DynamicFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/DynamicFragment.java new file mode 100644 index 000000000..803deb7f6 --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/DynamicFragment.java @@ -0,0 +1,20 @@ +package com.shayu.onetoone.activitys.fragments; + + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import com.shayu.onetoone.R; + +public class DynamicFragment extends BaseFragment { + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + return inflater.inflate(R.layout.fragment_dynamic, container, false); + } +} diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/FriendsFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/FriendsFragment.java new file mode 100644 index 000000000..5dffc6d83 --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/FriendsFragment.java @@ -0,0 +1,20 @@ +package com.shayu.onetoone.activitys.fragments; + + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import com.shayu.onetoone.R; + +public class FriendsFragment extends BaseFragment { + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + return inflater.inflate(R.layout.fragment_friends, container, false); + } +} diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MessageFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MessageFragment.java new file mode 100644 index 000000000..63bd90fec --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MessageFragment.java @@ -0,0 +1,20 @@ +package com.shayu.onetoone.activitys.fragments; + + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import com.shayu.onetoone.R; + +public class MessageFragment extends BaseFragment { + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + return inflater.inflate(R.layout.fragment_msg, container, false); + } +} diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MyFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MyFragment.java new file mode 100644 index 000000000..f8c0e3944 --- /dev/null +++ b/OneToOne/src/main/java/com/shayu/onetoone/activitys/fragments/MyFragment.java @@ -0,0 +1,20 @@ +package com.shayu.onetoone.activitys.fragments; + + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import com.shayu.onetoone.R; + +public class MyFragment extends BaseFragment { + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + return inflater.inflate(R.layout.fragment_my, container, false); + } +} diff --git a/OneToOne/src/main/res/drawable/tab_dynamic.xml b/OneToOne/src/main/res/drawable/tab_dynamic.xml new file mode 100644 index 000000000..8afe037a2 --- /dev/null +++ b/OneToOne/src/main/res/drawable/tab_dynamic.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/OneToOne/src/main/res/drawable/tab_friends.xml b/OneToOne/src/main/res/drawable/tab_friends.xml new file mode 100644 index 000000000..619280960 --- /dev/null +++ b/OneToOne/src/main/res/drawable/tab_friends.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/OneToOne/src/main/res/drawable/tab_msg.xml b/OneToOne/src/main/res/drawable/tab_msg.xml new file mode 100644 index 000000000..a224bf5c2 --- /dev/null +++ b/OneToOne/src/main/res/drawable/tab_msg.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/OneToOne/src/main/res/drawable/tab_my.xml b/OneToOne/src/main/res/drawable/tab_my.xml new file mode 100644 index 000000000..85ae03694 --- /dev/null +++ b/OneToOne/src/main/res/drawable/tab_my.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/OneToOne/src/main/res/layout/activity_launcher.xml b/OneToOne/src/main/res/layout/activity_launcher.xml new file mode 100644 index 000000000..2c09d16ba --- /dev/null +++ b/OneToOne/src/main/res/layout/activity_launcher.xml @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/OneToOne/src/main/res/layout/activity_main.xml b/OneToOne/src/main/res/layout/activity_main.xml new file mode 100644 index 000000000..a9dfe788f --- /dev/null +++ b/OneToOne/src/main/res/layout/activity_main.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OneToOne/src/main/res/layout/fragment_dynamic.xml b/OneToOne/src/main/res/layout/fragment_dynamic.xml new file mode 100644 index 000000000..a60ab8854 --- /dev/null +++ b/OneToOne/src/main/res/layout/fragment_dynamic.xml @@ -0,0 +1,15 @@ + + +