V1.0.5(6) 增加设置页面
This commit is contained in:
parent
9e7c6f9bcc
commit
4a18d4bdc6
@ -24,8 +24,8 @@ android {
|
||||
applicationId = "com.nature.free.variouswallpaper"
|
||||
minSdk = 23
|
||||
targetSdk = 34
|
||||
versionCode = 5
|
||||
versionName = "1.0.4"
|
||||
versionCode = 6
|
||||
versionName = "1.0.5"
|
||||
setProperty(
|
||||
"archivesBaseName",
|
||||
"Various Wallpapers_V" + versionName + "(${versionCode})_$timestamp"
|
||||
|
||||
@ -18,8 +18,12 @@
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/Theme.MyWallpaper"
|
||||
tools:targetApi="31">
|
||||
<activity
|
||||
android:name=".AboutActivity"
|
||||
android:exported="false" />
|
||||
<activity
|
||||
android:name=".SplashActivity"
|
||||
android:theme="@style/Theme.WelCome"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
@ -31,16 +35,18 @@
|
||||
android:name=".InfoActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name=".PrivacyActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name=".WallPaperActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:launchMode="singleTop"
|
||||
android:exported="false">
|
||||
|
||||
</activity>
|
||||
android:exported="false"
|
||||
android:launchMode="singleTop"/>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
71
app/src/main/assets/VariousWallpapers_PrivacyPolicy.html
Normal file
71
app/src/main/assets/VariousWallpapers_PrivacyPolicy.html
Normal file
@ -0,0 +1,71 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0047)https://hdwallpaperss.bitbucket.io/privacy.html -->
|
||||
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
|
||||
<title>Privacy Policy</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>Privacy Policy</h1>
|
||||
|
||||
<p>We provides this Privacy Policy to help you understand how we collect, use and disclose information, including what you may provide to us or that we obtain from our products and services. We treat your privacy very seriously. Your privacy is important to us.</p>
|
||||
|
||||
<h2>Information Collection and Use</h2>
|
||||
|
||||
<p>For a better experience, while using our Service, We may require you to provide us with certain personally identifiable information add whatever else you collect here, e.g. users name, address, location, pictures. The information that We request will be retained on your device and is not collected by us in any way retained by us and used as described in this privacy policy.</p>
|
||||
|
||||
<p>The app does use third-party services that may collect information used to identify you.</p>
|
||||
|
||||
<h3>Please refer to the privacy policy of the third-party service provider used by the application:</h3>
|
||||
<ul>
|
||||
<li>Google Play Services</li>
|
||||
<li>Google Analytics for Firebase</li>
|
||||
<li>Firebase Crashlytics</li>
|
||||
<li>Unity</li>
|
||||
<li>AppLovin</li>
|
||||
<li>Vungle</li>
|
||||
</ul>
|
||||
|
||||
<h2>Log Data</h2>
|
||||
|
||||
<p>We want to inform you that whenever you use our Service, in a case of an error in the app We collect data and information (through third-party products) on your phone called Log Data. This Log Data may include information such as your device Internet Protocol (“IP”) address, device name, operating system version, the configuration of the app when utilizing our Service, the time and date of your use of the Service, and other statistics.</p>
|
||||
|
||||
<h2>Cookies</h2>
|
||||
|
||||
<p>Cookies are files with a small amount of data that are commonly used as anonymous unique identifiers. These are sent to your browser from the websites that you visit and are stored on your device's internal memory.
|
||||
This Service does not use these “cookies” explicitly. However, the app may use third-party code and libraries that use “cookies” to collect information and improve their services. You have the option to either accept or refuse these cookies and know when a cookie is being sent to your device. If you choose to refuse our cookies, you may not be able to use some portions of this Service.</p>
|
||||
|
||||
<h2>Service Providers</h2>
|
||||
|
||||
<p>We may employ third-party companies and individuals due to the following reasons:</p>
|
||||
|
||||
<p>To facilitate our Service;
|
||||
To provide the Service on our behalf;To perform Service-related services; orTo assist us in analyzing how our Service is used.
|
||||
We want to inform users of this Service that these third parties have access to their Personal Information. The reason is to perform the tasks assigned to them on our behalf. However, they are obligated not to disclose or use the information for any other purpose.</p>
|
||||
|
||||
<h2>Security</h2>
|
||||
|
||||
<p>We value your trust in providing us your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the internet, or method of electronic storage is 100% secure and reliable, and We cannot guarantee its absolute security.</p>
|
||||
|
||||
<h2>Links to Other Sites</h2>
|
||||
|
||||
<p>This Service may contain links to other sites. If you click on a third-party link, you will be directed to that site. Note that these external sites are not operated by us. Therefore, We strongly advise you to review the Privacy Policy of these websites. We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party sites or services.</p>
|
||||
|
||||
<h2>Children’s Privacy</h2>
|
||||
|
||||
<p>These Services do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from children under 13 years of age. In the case We discover that a child under 13 has provided us with personal information, We immediately delete this from our servers. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact us so that We will be able to do the necessary actions.</p>
|
||||
|
||||
<h2>Changes to This Privacy Policy</h2>
|
||||
|
||||
<p>We may update our Privacy Policy from time to time. Thus, you are advised to review this page periodically for any changes. We will notify you of any changes by posting the new Privacy Policy on this page.</p>
|
||||
|
||||
<h2>PRIVACY QUESTIONS</h2>
|
||||
|
||||
<p>We may update Privacy Policy from time to time. When we change the policy in a material way, a notice will be posted on our website along with the updated Privacy Policy.</p>
|
||||
|
||||
<p>If you have any questions or concerns about our Privacy Policy or data processing, please contact us: <a href="https://hdwallpaperss.bitbucket.io/arbabulfb@gmail.com">arbabulfb@gmail.com
|
||||
|
||||
|
||||
|
||||
</a>.</p>
|
||||
</body></html>
|
||||
@ -7318,7 +7318,7 @@
|
||||
"source": "https://resource-sg-public.lux-ad.com/wallpaper/0a42a3b35cfb1a570a6fdb97fd20fb47.jpg"
|
||||
}
|
||||
],
|
||||
"title": "Editoru0027s Choice"
|
||||
"title": "Editor‘Choice"
|
||||
},
|
||||
{
|
||||
"covert": "https://resource-sg-public.lux-ad.com/wallpaper/e65fa87a4a5dcc36b6dd24fe81f1a417.jpg",
|
||||
|
||||
80
app/src/main/java/com/nature/free/test/AboutActivity.java
Normal file
80
app/src/main/java/com/nature/free/test/AboutActivity.java
Normal file
@ -0,0 +1,80 @@
|
||||
package com.nature.free.test;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
|
||||
import com.nature.free.test.base.BaseActivity;
|
||||
import com.nature.free.test.databinding.ActivityAboutBinding;
|
||||
import com.nature.free.test.max.MaxManager;
|
||||
|
||||
public class AboutActivity extends BaseActivity<ActivityAboutBinding> {
|
||||
|
||||
|
||||
@Override
|
||||
protected ActivityAboutBinding getMainBinding() {
|
||||
return ActivityAboutBinding.inflate(getLayoutInflater());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
MaxManager.onLoadAd();
|
||||
PackageInfo appVersionName = getAppVersionName();
|
||||
if (appVersionName != null) {
|
||||
mainBinding.tvVersion.setText(String.format(getString(R.string.app_version), appVersionName.versionName));
|
||||
} else {
|
||||
mainBinding.tvVersion.setText(String.format(getString(R.string.app_version), "1.0.5"));
|
||||
}
|
||||
String format = String.format(getString(R.string.gp), getPackageName());
|
||||
mainBinding.back.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
finish();
|
||||
}
|
||||
});
|
||||
mainBinding.tvRate.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
||||
|
||||
Intent intent = new Intent(Intent.ACTION_VIEW);
|
||||
intent.setData(Uri.parse(format));
|
||||
startActivity(intent);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
mainBinding.tvPrivacy.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
startActivity(new Intent(AboutActivity.this, PrivacyActivity.class));
|
||||
}
|
||||
});
|
||||
mainBinding.tvShare.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
||||
Intent intent = new Intent(Intent.ACTION_SEND);
|
||||
intent.putExtra(Intent.EXTRA_TEXT, format);
|
||||
intent.setType("text/plain");
|
||||
startActivity(Intent.createChooser(intent, getString(R.string.share_title)));
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
private PackageInfo getAppVersionName() {
|
||||
try {
|
||||
return getPackageManager().getPackageInfo(getPackageName(), 0);
|
||||
|
||||
} catch (PackageManager.NameNotFoundException exception) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,7 @@ import com.nature.free.test.data.ClassData_;
|
||||
import com.nature.free.test.data.Wallpaper;
|
||||
import com.nature.free.test.databinding.FragmentCategoryBinding;
|
||||
import com.nature.free.test.databinding.FragmentMainBinding;
|
||||
import com.nature.free.test.max.MaxManager;
|
||||
import com.nature.free.test.objectbox.ObjectBox;
|
||||
import com.nature.free.test.other.CategoryAdapter;
|
||||
import com.nature.free.test.other.MyAdapter;
|
||||
@ -52,6 +53,7 @@ public class CategoryFragment extends BaseFragment<FragmentCategoryBinding> {
|
||||
mParam1 = getArguments().getString(ARG_PARAM1);
|
||||
mParam2 = getArguments().getString(ARG_PARAM2);
|
||||
}
|
||||
MaxManager.onLoadAd();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,9 +1,11 @@
|
||||
package com.nature.free.test;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
@ -33,6 +35,14 @@ public class MainActivity extends BaseActivity<ActivityMainBinding> {
|
||||
initUi();
|
||||
bindVpTab();
|
||||
|
||||
mainBinding.imSet.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
Intent intent = new Intent(MainActivity.this, AboutActivity.class);
|
||||
startActivity(intent);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void initUi() {
|
||||
@ -45,11 +55,15 @@ public class MainActivity extends BaseActivity<ActivityMainBinding> {
|
||||
TabLayout.Tab tab = mainBinding.tab.newTab();
|
||||
View inflate = LayoutInflater.from(this).inflate(R.layout.tab_item_view, null);
|
||||
ImageView imageViewTab = inflate.findViewById(R.id.tabIm);
|
||||
TextView textView = inflate.findViewById(R.id.title);
|
||||
if (j == 0) {
|
||||
textView.setText(getString(R.string.title_recommend));
|
||||
imageViewTab.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.selector_ichome));
|
||||
} else if (j == 1) {
|
||||
textView.setText(getString(R.string.title_category));
|
||||
imageViewTab.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.selector_iccategory));
|
||||
} else if (j == 2) {
|
||||
textView.setText(getString(R.string.title_favorite));
|
||||
imageViewTab.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.selector_iclove));
|
||||
}
|
||||
tab.setCustomView(inflate);
|
||||
@ -72,7 +86,6 @@ public class MainActivity extends BaseActivity<ActivityMainBinding> {
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void bindVpTab() {
|
||||
mainBinding.viewP2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
|
||||
@Override
|
||||
@ -87,6 +100,8 @@ public class MainActivity extends BaseActivity<ActivityMainBinding> {
|
||||
public void onTabSelected(TabLayout.Tab tab) {
|
||||
View customView = tab.getCustomView();
|
||||
ImageView imageViewTab = customView.findViewById(R.id.tabIm);
|
||||
TextView textView = customView.findViewById(R.id.title);
|
||||
textView.setSelected(true);
|
||||
imageViewTab.setSelected(true);
|
||||
int position = tab.getPosition();
|
||||
mainBinding.viewP2.setCurrentItem(position);
|
||||
@ -100,6 +115,8 @@ public class MainActivity extends BaseActivity<ActivityMainBinding> {
|
||||
public void onTabUnselected(TabLayout.Tab tab) {
|
||||
View customView = tab.getCustomView();
|
||||
ImageView imageViewTab = customView.findViewById(R.id.tabIm);
|
||||
TextView textView = customView.findViewById(R.id.title);
|
||||
textView.setSelected(false);
|
||||
imageViewTab.setSelected(false);
|
||||
}
|
||||
|
||||
|
||||
@ -23,6 +23,7 @@ import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
import io.objectbox.query.Query;
|
||||
import io.objectbox.relation.ToMany;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
|
||||
@ -78,15 +79,10 @@ public class MainFragment extends BaseFragment<FragmentMainBinding> {
|
||||
}
|
||||
});
|
||||
} else {
|
||||
Query<ClassData> newest = ObjectBox.getBoxBeanCategory().query(ClassData_.title.equal("Newest")).build();
|
||||
ClassData beans = newest.findFirst();
|
||||
newest.close();
|
||||
if (beans != null){
|
||||
info.addAll(beans.info);
|
||||
List<Wallpaper> main = getMain();
|
||||
Log.d(MyWallpaper.TAG, "--------main" + main.size());
|
||||
info.addAll(main);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fragmentVb.recycler.setLayoutManager(new GridLayoutManager(requireContext(), 2));
|
||||
myAdapter.refresh(info);
|
||||
fragmentVb.recycler.setAdapter(myAdapter);
|
||||
@ -99,20 +95,18 @@ public class MainFragment extends BaseFragment<FragmentMainBinding> {
|
||||
if (love & myAdapter != null) {
|
||||
myAdapter.refresh(getLoves());
|
||||
}
|
||||
|
||||
if (!love && myAdapter != null) {
|
||||
myAdapter.refresh(getMain());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private List<Wallpaper> getMain() {
|
||||
List<Wallpaper> data = new ArrayList<>();
|
||||
Query<ClassData> newest = ObjectBox.getBoxBeanCategory().query(ClassData_.title.equal("Newest")).build();
|
||||
ClassData beans = newest.findFirst();
|
||||
newest.close();
|
||||
if (beans != null) {
|
||||
data.addAll(beans.info);
|
||||
ToMany<Wallpaper> list = beans.info;
|
||||
data.addAll(list.subList(5, 23));
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
@ -8,6 +8,9 @@ import com.applovin.sdk.AppLovinSdk
|
||||
import com.applovin.sdk.AppLovinSdkInitializationConfiguration
|
||||
import com.nature.free.test.data.ClassData
|
||||
import com.nature.free.test.objectbox.ObjectBox
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
|
||||
class MyWallpaper : Application() {
|
||||
@ -48,8 +51,11 @@ class MyWallpaper : Application() {
|
||||
}
|
||||
|
||||
private fun init() {
|
||||
CoroutineScope(Dispatchers.IO).launch{
|
||||
val openFile = Utils.openFile(assets.open("info.json"))
|
||||
data = Utils.getData(openFile)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
24
app/src/main/java/com/nature/free/test/PrivacyActivity.kt
Normal file
24
app/src/main/java/com/nature/free/test/PrivacyActivity.kt
Normal file
@ -0,0 +1,24 @@
|
||||
package com.nature.free.test
|
||||
|
||||
import android.os.Bundle
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import com.nature.free.test.databinding.ActivityPrivacyBinding
|
||||
import com.nature.free.test.max.MaxManager
|
||||
|
||||
|
||||
class PrivacyActivity : AppCompatActivity() {
|
||||
|
||||
private lateinit var vb: ActivityPrivacyBinding
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
vb = ActivityPrivacyBinding.inflate(layoutInflater)
|
||||
MaxManager.onLoadAd()
|
||||
setContentView(vb.root)
|
||||
vb.webView.loadUrl("file:///android_asset/VariousWallpapers_PrivacyPolicy.html")
|
||||
vb.back.setOnClickListener {
|
||||
finish()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@ -30,6 +30,7 @@ import com.nature.free.test.data.Wallpaper_;
|
||||
import com.nature.free.test.databinding.ActivityWallpaperBinding;
|
||||
import com.nature.free.test.max.MaxManager;
|
||||
import com.nature.free.test.max.onAdStatusListener;
|
||||
import com.nature.free.test.max.onShowAction;
|
||||
import com.nature.free.test.objectbox.ObjectBox;
|
||||
import com.nature.free.test.other.DialogSet;
|
||||
|
||||
@ -135,19 +136,13 @@ public class WallPaperActivity extends BaseActivity<ActivityWallpaperBinding> im
|
||||
}
|
||||
|
||||
private void apply(int which) {
|
||||
MaxManager.ShowAd(WallPaperActivity.this, new onAdStatusListener() {
|
||||
@Override
|
||||
public void onAdStatus(int type) {
|
||||
if (type == MaxManager.type_show_close || type == MaxManager.type_show_fail || type == MaxManager.type_no_cache) {
|
||||
|
||||
mainBinding.load.setVisibility(View.VISIBLE);
|
||||
if (mainBinding.check1.isSelected()) {
|
||||
setmWallpaper(which, mBitmapPro1);
|
||||
} else if (mainBinding.check2.isSelected()) {
|
||||
setmWallpaper(which, mBitmapSource);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@ -302,7 +297,12 @@ public class WallPaperActivity extends BaseActivity<ActivityWallpaperBinding> im
|
||||
public void onClick(View v) {
|
||||
if (v.equals(mainBinding.back)) {
|
||||
if (isMainEnter) {
|
||||
showMaxAd();
|
||||
showMaxAd(new onShowAction() {
|
||||
@Override
|
||||
public void doAction() {
|
||||
finish();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
finish();
|
||||
}
|
||||
@ -316,15 +316,27 @@ public class WallPaperActivity extends BaseActivity<ActivityWallpaperBinding> im
|
||||
}
|
||||
|
||||
} else if (v.equals(mainBinding.save)) {
|
||||
showMaxAd(new onShowAction() {
|
||||
@Override
|
||||
public void doAction() {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
||||
save();
|
||||
} else {
|
||||
permission = new String[]{android.Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};
|
||||
ActivityCompat.requestPermissions(this, permission, 0);
|
||||
ActivityCompat.requestPermissions(WallPaperActivity.this, permission, 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
} else if (v.equals(mainBinding.setWallpaper)) {
|
||||
|
||||
showMaxAd(new onShowAction() {
|
||||
@Override
|
||||
public void doAction() {
|
||||
showDialog();
|
||||
}
|
||||
});
|
||||
|
||||
} else if (v.equals(mainBinding.love)) {
|
||||
mainBinding.love.setSelected(!mainBinding.love.isSelected());
|
||||
mWallpaper.setLove(mainBinding.love.isSelected());
|
||||
@ -369,12 +381,12 @@ public class WallPaperActivity extends BaseActivity<ActivityWallpaperBinding> im
|
||||
mainBinding.load.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
private void showMaxAd() {
|
||||
private void showMaxAd(onShowAction action) {
|
||||
MaxManager.ShowAd(WallPaperActivity.this, new onAdStatusListener() {
|
||||
@Override
|
||||
public void onAdStatus(int type) {
|
||||
if (type == MaxManager.type_show_close || type == MaxManager.type_show_fail || type == MaxManager.type_no_cache) {
|
||||
finish();
|
||||
action.doAction();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@ -124,7 +124,7 @@ public class MaxManager {
|
||||
|
||||
@Override
|
||||
public void onAdLoadFailed(@NonNull String s, @NonNull MaxError maxError) {
|
||||
|
||||
Log.d(MyWallpaper.TAG, "-------onAdLoadFailed-----s="+s+"---maxError="+maxError.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -162,4 +162,5 @@ public class MaxManager {
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,6 @@
|
||||
package com.nature.free.test.max;
|
||||
|
||||
public interface onShowAction {
|
||||
|
||||
void doAction();
|
||||
}
|
||||
@ -66,9 +66,7 @@ class MyAdapter constructor(private var context: Context, private var mLove: Boo
|
||||
holder.vb.loveItem.isVisible = false
|
||||
}
|
||||
|
||||
val mD5Hash = Utils.getMD5Hash(wallpaper.preview)
|
||||
|
||||
val realUrl = Utils.getRealUrl(wallpaper.preview)
|
||||
|
||||
var url = wallpaper.preview
|
||||
Glide.with(context).load(url)
|
||||
|
||||
6
app/src/main/res/color/tab_textcolor.xml
Normal file
6
app/src/main/res/color/tab_textcolor.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="@color/white" android:state_selected="true" />
|
||||
<item android:color="@color/love_gray" android:state_selected="false" />
|
||||
|
||||
</selector>
|
||||
12
app/src/main/res/drawable/back_black.xml
Normal file
12
app/src/main/res/drawable/back_black.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="64dp"
|
||||
android:height="64dp"
|
||||
android:viewportWidth="1024"
|
||||
android:viewportHeight="1024">
|
||||
<path
|
||||
android:pathData="M444.5,300.9a42.7,42.7 0,1 0,-60.4 -60.4l-241.3,241.4a42.5,42.5 0,0 0,0 60.4l241.3,241.3a42.7,42.7 0,1 0,60.4 -60.3l-211.2,-211.2 211.2,-211.2z"
|
||||
android:fillColor="@color/main_bg"/>
|
||||
<path
|
||||
android:pathData="M170.7,512a42.7,42.7 0,0 1,42.7 -42.7h640a42.7,42.7 0,1 1,0 85.3H213.3a42.7,42.7 0,0 1,-42.7 -42.7z"
|
||||
android:fillColor="@color/main_bg"/>
|
||||
</vector>
|
||||
@ -1,9 +1,9 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="144dp"
|
||||
android:height="144dp"
|
||||
android:viewportWidth="1024"
|
||||
android:viewportHeight="1024">
|
||||
android:width="32dp"
|
||||
android:height="32dp"
|
||||
android:viewportWidth="32"
|
||||
android:viewportHeight="32">
|
||||
<path
|
||||
android:pathData="M441.1,354.7l20,-186.8c2.7,-25.6 24.7,-45 50.9,-45 26.2,0 48.2,19.4 50.9,45l20,186.8a61.4,61.4 0,0 0,61.1 54.9h85.4c15.6,0 28.3,13.1 28.3,29.2 0,7.5 -2.8,14.7 -7.8,20.1L542.8,682.7a41.7,41.7 0,0 1,-61.6 0L274.1,458.9a29.8,29.8 0,0 1,1 -41.2c5.3,-5.2 12.3,-8 19.6,-8h85.4a61.4,61.4 0,0 0,61.1 -54.9zM214.7,654.1l23.3,93.1a41,41 0,0 0,39.7 31H746.3a41,41 0,0 0,39.7 -31l23.3,-93.1A52.5,52.5 0,0 1,860.2 614.4a41,41 0,0 1,41 41v143.4a102.4,102.4 0,0 1,-102.4 102.4H225.3a102.4,102.4 0,0 1,-102.4 -102.4V655.4a41,41 0,0 1,41 -41c24.1,0 45.1,16.4 50.9,39.7z"
|
||||
android:pathData="M24.655,14.012C25.173,13.438 24.765,12.521 23.992,12.521H21.188C20.695,12.521 20.295,12.121 20.295,11.628V3.893C20.295,3.4 19.896,3 19.402,3H12.598C12.104,3 11.705,3.4 11.705,3.893V11.628C11.705,12.121 11.305,12.521 10.812,12.521H8.008C7.235,12.521 6.827,13.438 7.345,14.012L15.337,22.868C15.692,23.261 16.308,23.261 16.663,22.868L24.655,14.012ZM6,29.107C6,29.6 6.4,30 6.893,30H25.107C25.6,30 26,29.6 26,29.107V27.694C26,27.201 25.6,26.802 25.107,26.802H6.893C6.4,26.802 6,27.201 6,27.694V29.107Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
</vector>
|
||||
|
||||
@ -1,9 +1,12 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="144dp"
|
||||
android:height="144dp"
|
||||
android:viewportWidth="1024"
|
||||
android:viewportHeight="1024">
|
||||
android:width="32dp"
|
||||
android:height="32dp"
|
||||
android:viewportWidth="32"
|
||||
android:viewportHeight="32">
|
||||
<path
|
||||
android:pathData="M245.3,128C180.9,128 128,180.9 128,245.3v21.3a32,32 0,1 0,64 0v-21.3C192,215.5 215.5,192 245.3,192h21.3a32,32 0,1 0,0 -64h-21.3zM373.3,128a32,32 0,1 0,0 64h85.3a32,32 0,1 0,0 -64h-85.3zM565.3,128a32,32 0,1 0,0 64h85.3a32,32 0,1 0,0 -64h-85.3zM757.3,128a32,32 0,1 0,0 64h21.3c29.8,0 53.3,23.5 53.3,53.3v21.3a32,32 0,1 0,64 0v-21.3C896,180.9 843.1,128 778.7,128h-21.3zM650.7,277.3c-29.3,0 -55.4,12.2 -71.9,30.7C562.2,326.7 554.7,350.2 554.7,373.3c0,23.1 7.6,46.7 24.1,65.3C595.3,457.2 621.3,469.3 650.7,469.3s55.4,-12.2 71.9,-30.7C739.1,420 746.7,396.4 746.7,373.3c0,-23.1 -7.6,-46.7 -24.1,-65.3C706,289.5 680,277.3 650.7,277.3zM159.5,340.9A32,32 0,0 0,128 373.3v85.3a32,32 0,1 0,64 0v-85.3a32,32 0,0 0,-32.5 -32.4zM863.5,340.9A32,32 0,0 0,832 373.3v85.3a32,32 0,1 0,64 0v-85.3a32,32 0,0 0,-32.5 -32.4zM650.7,341.3c13.3,0 19.3,3.8 24.1,9.3 4.8,5.4 7.9,13.9 7.9,22.7 0,8.9 -3.1,17.3 -7.9,22.7 -4.8,5.4 -10.8,9.3 -24.1,9.3s-19.3,-3.8 -24.1,-9.3c-4.8,-5.4 -7.9,-13.9 -7.9,-22.7 0,-8.9 3.1,-17.3 7.9,-22.7 4.8,-5.4 10.8,-9.3 24.1,-9.3zM512,512.1a86,86 0,0 0,-60 24.1L192.9,786.9C192.4,784.2 192,781.5 192,778.7v-21.3a32,32 0,0 0,-32.5 -32.4A32,32 0,0 0,128 757.3v21.3c0,64.4 52.9,117.3 117.3,117.3h21.3a32,32 0,1 0,0 -64h-21.3c-2.2,0 -4.3,-0.4 -6.4,-0.6l257.6,-249.2a21.9,21.9 0,0 1,31.1 0L785.1,831.4c-2.1,0.2 -4.2,0.6 -6.4,0.6h-21.3a32,32 0,1 0,0 64h21.3c64.4,0 117.3,-52.9 117.3,-117.3v-21.3a32,32 0,0 0,-32.5 -32.4A32,32 0,0 0,832 757.3v21.3c0,2.8 -0.4,5.5 -0.9,8.3L572.1,536.2A86.1,86.1 0,0 0,512 512.1zM159.5,532.9A32,32 0,0 0,128 565.3v85.3a32,32 0,1 0,64 0v-85.3a32,32 0,0 0,-32.5 -32.4zM863.5,532.9A32,32 0,0 0,832 565.3v85.3a32,32 0,1 0,64 0v-85.3a32,32 0,0 0,-32.5 -32.4zM373.3,832a32,32 0,1 0,0 64h85.3a32,32 0,1 0,0 -64h-85.3zM565.3,832a32,32 0,1 0,0 64h85.3a32,32 0,1 0,0 -64h-85.3z"
|
||||
android:pathData="M9.571,3.143H22.429C22.766,3.143 23.101,3.209 23.413,3.339C23.725,3.468 24.008,3.657 24.247,3.896C24.486,4.135 24.675,4.418 24.804,4.73C24.934,5.042 25,5.377 25,5.714V26.286C25,26.623 24.934,26.958 24.804,27.27C24.675,27.582 24.486,27.865 24.247,28.104C24.008,28.343 23.725,28.532 23.413,28.661C23.101,28.791 22.766,28.857 22.429,28.857H9.571C9.234,28.857 8.899,28.791 8.587,28.661C8.275,28.532 7.992,28.343 7.753,28.104C7.514,27.865 7.325,27.582 7.196,27.27C7.067,26.958 7,26.623 7,26.286V5.714C7,5.377 7.067,5.042 7.196,4.73C7.325,4.418 7.514,4.135 7.753,3.896C7.992,3.657 8.275,3.468 8.587,3.339C8.899,3.209 9.234,3.143 9.571,3.143ZM10.857,7C10.516,7 10.189,7.135 9.948,7.377C9.707,7.618 9.571,7.945 9.571,8.286V25C9.571,25.341 9.707,25.668 9.948,25.909C10.189,26.15 10.516,26.286 10.857,26.286H21.143C21.484,26.286 21.811,26.15 22.052,25.909C22.293,25.668 22.429,25.341 22.429,25V8.286C22.429,7.945 22.293,7.618 22.052,7.377C21.811,7.135 21.484,7 21.143,7H10.857ZM14.071,4.429C13.901,4.429 13.737,4.496 13.617,4.617C13.496,4.737 13.429,4.901 13.429,5.071C13.429,5.242 13.496,5.405 13.617,5.526C13.737,5.647 13.901,5.714 14.071,5.714H17.929C18.099,5.714 18.263,5.647 18.383,5.526C18.504,5.405 18.571,5.242 18.571,5.071C18.571,4.901 18.504,4.737 18.383,4.617C18.263,4.496 18.099,4.429 17.929,4.429H14.071Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M17.899,18.713C18.224,18.353 18.531,18.353 18.821,18.713L21.804,23.114C21.949,23.275 21.967,23.496 21.859,23.776C21.751,24.018 21.57,24.139 21.316,24.139H10.901C10.684,24.139 10.521,24.018 10.412,23.776C10.304,23.455 10.322,23.214 10.466,23.053L12.474,20.221C12.528,20.142 12.601,20.078 12.687,20.035C12.772,19.993 12.868,19.974 12.963,19.979C13.05,19.979 13.136,20 13.212,20.043C13.288,20.085 13.351,20.147 13.396,20.221L15.186,22.632L17.899,18.714V18.713Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
</vector>
|
||||
|
||||
12
app/src/main/res/drawable/icon_set.xml
Normal file
12
app/src/main/res/drawable/icon_set.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="64dp"
|
||||
android:height="64dp"
|
||||
android:viewportWidth="1024"
|
||||
android:viewportHeight="1024">
|
||||
<path
|
||||
android:pathData="M641.7,931.4c-16.6,0 -32.7,-6.6 -44.3,-18.2 -33.9,-33.8 -66.4,-53.1 -89,-53.1 -30,0 -66.4,31.2 -83.9,46.2l-0.5,0.4 -1.8,1.5c-0.8,0.7 -1.5,1.3 -2.1,1.8l-0.7,0.5 -0.6,0.7c-9.5,11 -25.9,17.6 -43.8,17.6 -7.9,0 -15.8,-2.5 -23.3,-5.1l-0.2,-0.1c-0.2,-0.1 -0.5,-0.2 -0.8,-0.4l-106.9,-59c-0.4,-0.2 -0.7,-0.4 -0.9,-0.5 -23.4,-15.8 -33.6,-46.6 -23.3,-70.2l0.1,-0.2c0.1,-0.3 9.1,-22.9 9.1,-40.6 0,-59.9 -48.9,-108.6 -109,-108.6h-2.5c-20.9,0 -38,-17.5 -43.5,-44.6l-0.1,-0.3v-0.2l-0.1,-0.6c-0.1,-0.8 -0.5,-3 -0.8,-5.2v-0.2c-2.6,-15.2 -8.7,-50.8 -8.7,-79.9 0,-29.1 6.1,-64.7 8.7,-79.9 0.2,-1.3 0.4,-2.7 0.6,-3.7l0.4,-2.3v-0.2l0.1,-0.3c5.2,-28 21.4,-44.7 43.5,-44.7h4.8c60.1,0 109,-48.7 109,-108.6 0,-19.4 -8.8,-39.4 -10.8,-43.9l-0.6,-1.4c-10.9,-24.4 -2.6,-55 18.6,-68.3 0.1,-0.1 0.2,-0.1 0.3,-0.2l115,-62.1s0.6,-0.2 0.7,-0.3l0.9,-0.3c6,-2 14.2,-4.6 22,-4.6 16.6,0 32.7,6.6 44.3,18.2 19.5,19.4 58.7,48.3 86.9,48.3 27.9,0 67.2,-28.9 86.9,-48.3 10.9,-10.9 28.8,-18.2 44.4,-18.2 7.9,0 15.8,2.5 23.3,5.1l0.3,0.1h0.1l0.2,0.2 109.9,61.8c27.3,14.9 39.4,43.7 28.7,68.4l-0.1,0.2c-0.1,0.2 -9.1,22.8 -9.1,40.6 0,59.9 48.9,108.6 109,108.6h4.8c20.9,0 38,17.5 43.5,44.6l0.1,0.3v0.2l0.1,0.6c0.1,0.9 0.5,3.1 0.9,5.4 2.6,15.2 8.7,50.9 8.7,79.9 0,31.1 -6.3,66.9 -8.7,80.4l-0.1,0.3c-0.4,2 -0.7,3.7 -0.8,4.7l-0.1,0.6v0.4c-5.2,28 -21.4,44.7 -43.5,44.7h-4.8c-60.1,0 -108.9,48.6 -109,108.4v0.1l-0.1,0.7c-1.6,16.5 4.3,33.4 8.1,42.3v1.9l1.5,1.5c10.1,24.1 1.7,54 -18.9,67.1l-0.8,0.6 -112.1,61.7 -0.2,0.1c-9.6,4.7 -17.8,7.6 -29,7.6zM503.5,799.5c29.1,0 61.2,12.2 95.2,36.1l0.4,0.3 0.4,0.2c13.4,7.4 26.2,16.8 37,27.2l4.8,4.6 98.2,-53.4 -2.6,-7.3c-3.8,-10.7 -10.1,-32 -10.1,-54.4 0,-44 16.7,-85.8 47.1,-117.7 27.7,-29.3 64.9,-48.1 104.7,-52.7l6.9,-0.8 1,-6.9c1.8,-11.9 4.8,-38.8 4.8,-63.7 0,-18.6 -3.2,-42.6 -5.2,-58.5l-0.2,-1.2c-0.2,-1.3 -0.3,-2.6 -0.4,-3.5l-0.6,-7.4 -7.4,-0.9c-39.6,-4.8 -76.4,-23.1 -103.6,-51.7 -30.4,-31.8 -47.2,-74 -47.2,-118.8 0,-15.9 3.5,-34.2 10.5,-54.5l2.5,-7.2 -97.7,-54.4 -4.9,4.4c-10.4,9.5 -21.5,18.2 -33,25.7l-0.1,0.1c-32,22 -64.3,34.2 -91.1,34.2 -27.9,0 -56.7,-10.5 -93.5,-34.1l-1.3,-0.8c-14.1,-9.5 -25.1,-19.9 -31.9,-26.9l-4.9,-5L279,207.1l2.6,7.3c4.7,13.2 10.2,33.4 10.2,54.5 0,44 -16.7,85.8 -47.1,117.7 -27.4,29 -64.3,47.7 -103.7,52.6l-6.8,0.8 -1.1,6.7c-0.2,1.1 -0.3,2.2 -0.4,3.2v0.1c-0.1,0.6 -0.1,1.2 -0.2,1.9l-0.1,1c-2,15.7 -5.1,39.4 -5.1,57.7 0,18.6 3.2,42.6 5.2,58.5l0.2,1.1c0.2,1.4 0.4,2.7 0.4,3.6l0.6,7.4 7.4,0.9c39.6,4.8 76.4,23.1 103.6,51.7 30.4,31.8 47.2,74 47.2,118.8 0,21.1 -5.5,41.5 -10.1,54.8l-2.5,7.1 93.5,53.1 4.9,-5c10.2,-10.3 21,-19.3 32,-26.6l0.2,-0.1c34.1,-24.1 65.6,-36.4 93.6,-36.4z"
|
||||
android:fillColor="@color/white"/>
|
||||
<path
|
||||
android:pathData="M508.3,668c-41.7,0 -81.3,-16.5 -111.5,-46.4 -30,-29.9 -46.5,-69.3 -46.5,-110.9 0,-41.6 16.5,-81 46.5,-111 30,-29.9 69.6,-46.3 111.4,-46.3 41.7,0 81.3,16.5 111.5,46.4 30,29.9 46.5,69.3 46.5,110.9 0,41.9 -16.2,81.3 -45.7,110.8 -29.5,30 -69.4,46.5 -112.2,46.5zM508.3,416.5c-52.3,0 -94.9,42.4 -94.9,94.5s42.6,94.5 94.9,94.5c52.3,0 94.9,-42.4 94.9,-94.5 -0.3,-53 -42,-94.5 -94.9,-94.5z"
|
||||
android:fillColor="@color/white"/>
|
||||
</vector>
|
||||
@ -1,9 +1,10 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="1024"
|
||||
android:viewportHeight="1024">
|
||||
android:width="32dp"
|
||||
android:height="32dp"
|
||||
android:viewportWidth="32"
|
||||
android:viewportHeight="32">
|
||||
<path
|
||||
android:pathData="M682.7,113.8c157.1,0 284.4,127.3 284.4,284.4 0,205.3 -142,371.7 -426,499.3a71.1,71.1 0,0 1,-58.3 0C198.9,769.9 56.9,603.5 56.9,398.2 56.9,241.1 184.2,113.8 341.3,113.8c64,0 123.1,21.2 170.7,56.9A283,283 0,0 1,682.7 113.8z"
|
||||
android:fillColor="@color/love_gray"/>
|
||||
android:pathData="M11.968,6.144C12.505,6.275 13.027,6.47 13.521,6.727C14.51,7.24 15.36,7.984 16,8.895C16,8.895 16,8.895 16,8.895C15.812,8.627 15.605,8.374 15.382,8.136C14.848,7.566 14.219,7.089 13.521,6.727C13.027,6.47 12.505,6.275 11.968,6.144ZM23.077,6.087C26.24,6.735 28.619,9.533 28.619,12.887C28.619,19.827 20.416,26.137 16,27.604C16,27.604 16,27.604 16,27.604C20.417,26.137 28.619,19.827 28.619,12.887C28.619,9.533 26.24,6.735 23.077,6.087ZM13.957,5.887C14.719,6.282 15.409,6.798 16.001,7.413L10.321,5C11.587,4.999 12.834,5.303 13.957,5.887ZM21.678,5C19.448,5 17.434,5.926 16.001,7.413L10.321,5C5.965,5 2.435,8.531 2.435,12.887C2.435,16.721 4.685,20.26 7.362,22.964C10.048,25.676 13.326,27.713 15.701,28.502C15.895,28.567 16.105,28.567 16.298,28.502C18.674,27.713 21.952,25.676 24.638,22.964C27.315,20.26 29.565,16.721 29.565,12.887C29.565,8.531 26.034,5 21.678,5Z"
|
||||
android:fillColor="#717171"
|
||||
android:fillType="evenOdd"/>
|
||||
</vector>
|
||||
|
||||
@ -1,9 +1,10 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="1024"
|
||||
android:viewportHeight="1024">
|
||||
android:width="32dp"
|
||||
android:height="32dp"
|
||||
android:viewportWidth="32"
|
||||
android:viewportHeight="32">
|
||||
<path
|
||||
android:pathData="M682.7,113.8c157.1,0 284.4,127.3 284.4,284.4 0,205.3 -142,371.7 -426,499.3a71.1,71.1 0,0 1,-58.3 0C198.9,769.9 56.9,603.5 56.9,398.2 56.9,241.1 184.2,113.8 341.3,113.8c64,0 123.1,21.2 170.7,56.9A283,283 0,0 1,682.7 113.8z"
|
||||
android:fillColor="@color/love_red"/>
|
||||
android:pathData="M13.842,5.27C14.647,5.688 15.375,6.234 16.001,6.883L10,4.333C11.337,4.332 12.655,4.654 13.842,5.27ZM22,4.333C19.644,4.333 17.515,5.312 16.001,6.883L9.999,4.333C5.397,4.334 1.666,8.065 1.666,12.667C1.666,16.717 4.044,20.458 6.873,23.314C9.711,26.18 13.174,28.332 15.684,29.166C15.889,29.234 16.111,29.234 16.315,29.166C18.825,28.332 22.289,26.18 25.127,23.314C27.955,20.458 30.333,16.717 30.333,12.667C30.333,8.064 26.602,4.333 22,4.333Z"
|
||||
android:fillColor="#D81E06"
|
||||
android:fillType="evenOdd"/>
|
||||
</vector>
|
||||
|
||||
120
app/src/main/res/layout/activity_about.xml
Normal file
120
app/src/main/res/layout/activity_about.xml
Normal file
@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/main_bg"
|
||||
tools:context=".AboutActivity">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/back"
|
||||
android:layout_width="44dp"
|
||||
android:layout_height="44dp"
|
||||
android:layout_marginStart="12dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:padding="10dp"
|
||||
android:src="@drawable/back"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
android:id="@+id/card_logo"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="63dp"
|
||||
app:cardCornerRadius="6dp"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/back">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="86dp"
|
||||
android:layout_height="86dp"
|
||||
android:src="@mipmap/icon" />
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_version"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="14dp"
|
||||
android:text="@string/app_version"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="15sp"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/card_logo" />
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_rate"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:layout_marginStart="25dp"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/app_rate"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="16sp"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_version" />
|
||||
|
||||
|
||||
<View
|
||||
android:id="@+id/view1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:layout_marginStart="25dp"
|
||||
android:layout_marginTop="2dp"
|
||||
android:layout_marginEnd="25dp"
|
||||
android:background="@color/white"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_rate" />
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_share"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:layout_marginStart="25dp"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/app_share"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="16sp"
|
||||
app:layout_constraintTop_toBottomOf="@id/view1" />
|
||||
|
||||
|
||||
<View
|
||||
android:id="@+id/view2"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:layout_marginStart="25dp"
|
||||
android:layout_marginTop="2dp"
|
||||
android:layout_marginEnd="25dp"
|
||||
android:background="@color/white"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_share" />
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_privacy"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:layout_marginStart="25dp"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/app_privacy"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="16sp"
|
||||
app:layout_constraintTop_toBottomOf="@id/view2" />
|
||||
|
||||
|
||||
<View
|
||||
android:id="@+id/view3"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:layout_marginStart="25dp"
|
||||
android:layout_marginTop="2dp"
|
||||
android:layout_marginEnd="25dp"
|
||||
android:background="@color/white"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_privacy" />
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@ -12,16 +12,28 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:padding="10dp"
|
||||
android:layout_alignTop="@id/imSet"
|
||||
android:layout_alignBottom="@id/imSet"
|
||||
android:gravity="center"
|
||||
android:text="@string/app_name"
|
||||
android:textColor="@color/text_color"
|
||||
android:textSize="17sp" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/imSet"
|
||||
android:layout_width="54dp"
|
||||
android:layout_height="54dp"
|
||||
android:src="@drawable/icon_set"
|
||||
android:padding="15dp"
|
||||
android:layout_alignParentEnd="true"/>
|
||||
|
||||
<com.google.android.material.tabs.TabLayout
|
||||
android:id="@+id/tab"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:layout_below="@id/tvTitle"
|
||||
app:tabPaddingStart="0dp"
|
||||
app:tabPaddingEnd="0dp"
|
||||
android:background="@color/main_bg"
|
||||
android:layout_marginTop="10dp"
|
||||
app:tabIndicatorHeight="0dp" />
|
||||
|
||||
43
app/src/main/res/layout/activity_privacy.xml
Normal file
43
app/src/main/res/layout/activity_privacy.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:background="@color/white"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/back"
|
||||
android:layout_width="44dp"
|
||||
android:layout_height="44dp"
|
||||
android:layout_marginStart="12dp"
|
||||
android:padding="10dp"
|
||||
android:src="@drawable/back_black" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="44dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:padding="10dp"
|
||||
android:text="@string/app_privacy"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<WebView
|
||||
android:id="@+id/webView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/back"
|
||||
android:text="@string/app_privacy"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="15sp"
|
||||
tools:ignore="WebViewLayout" />
|
||||
</RelativeLayout>
|
||||
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
@ -2,6 +2,7 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:gravity="center">
|
||||
|
||||
<ImageView
|
||||
@ -9,4 +10,13 @@
|
||||
android:layout_width="26dp"
|
||||
android:layout_height="26dp" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="5dp"
|
||||
android:id="@+id/title"
|
||||
android:textColor="@color/tab_textcolor"
|
||||
android:text="@string/app_privacy"
|
||||
android:textSize="15sp"/>
|
||||
|
||||
</LinearLayout>
|
||||
@ -12,4 +12,5 @@
|
||||
<color name="love_gray">#babcbd</color>
|
||||
<color name="im_right">#30a92d</color>
|
||||
<color name="trans">#00ffffff</color>
|
||||
<color name="line_color">#2C888887</color>
|
||||
</resources>
|
||||
@ -13,4 +13,13 @@
|
||||
<string name="save_fail">Failed to save the album, please try again!</string>
|
||||
<string name="load_fail">Loading failed, please try again!</string>
|
||||
<string name="loading">Loading, please wait</string>
|
||||
<string name="app_version">V%s</string>
|
||||
<string name="app_rate">Rate Us</string>
|
||||
<string name="app_privacy">Privacy Policy</string>
|
||||
<string name="app_share">Share</string>
|
||||
<string name="gp">https://play.google.com/store/apps/details?id=%s</string>
|
||||
<string name="share_title">Share To</string>
|
||||
<string name="title_category">Category</string>
|
||||
<string name="title_recommend">Recommendation</string>
|
||||
<string name="title_favorite">Favorite</string>
|
||||
</resources>
|
||||
@ -7,7 +7,12 @@
|
||||
</style>
|
||||
|
||||
<style name="Theme.MyWallpaper" parent="Base.Theme.MyWallpaper" >
|
||||
<item name="android:windowBackground">@color/main_bg</item>
|
||||
|
||||
<!-- <item name="windowNoTitle">true</item>-->
|
||||
</style>
|
||||
|
||||
<style name="Theme.WelCome" parent="Base.Theme.MyWallpaper" >
|
||||
<item name="android:windowBackground">@color/main_bg</item>
|
||||
|
||||
</style>
|
||||
</resources>
|
||||
Loading…
Reference in New Issue
Block a user