Заставка в приложении Android: изображение не загружается - PullRequest
0 голосов
/ 12 апреля 2020

Я начинающий с android. Я создал в android studio экран spla sh простого Lo go (png 1300x400 px), и когда я его запускаю, он работает. Я создал apk с функцией сборки (чтобы попробовать на смартфоне), но он не загружает изображение (белый экран в течение 3 секунд, а затем приложение запускается). Это проблема с телефоном (простой vodafone VFD 600)?

Это код

activity_main. xml

 <?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"
    tools:context=".MainActivity">

    <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Hello World!"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

    </androidx.constraintlayout.widget.ConstraintLayout>

activity_splash_screen. xml

   <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#f1f1f1" >

    <ImageView
    android:id="@+id/logo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:src="@drawable/logo" />

    <TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginBottom="10dp"
    android:textSize="12dp"
    android:textColor="#454545"
    android:gravity="center_horizontal"
    android:layout_alignParentBottom="true"
    android:text="www.codeseasy.com" />

    </RelativeLayout>

SplashSCreen. java

 package com.example.splashscreen;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;

public class SplashScreen extends AppCompatActivity {

@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);

new Handler().postDelayed(new Runnable() {
@override public void run() {
Intent i = new Intent(SplashScreen.this, MainActivity.class); startActivity(i);
finish(); } }, 5000);
}}

AndroidManifest. xml

   <?xml version="1.0" encoding="utf-8"?>
        <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.splashscreen">

        <application
        android:allowBackup="true"
        android:icon="@Mipmap/ic_launcher"
        android:label="@String/app_name"
        android:roundIcon="@Mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@Style/AppTheme">
        <activity android:name=".MainActivity">
        <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        </activity>
        <activity android:name=".SplashScreen"
        android:theme="@Style/Theme.AppCompat.NoActionBar">
        <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        </activity>

        </application>

        </manifest>

MainActivity.kt

package com.example.splashscreen

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}

Доброе утро, Я попробовал apk на другом смартфоне, huawei p10, и он работает. На данный момент проблема должна быть в смартфоне. другой вопрос: можно ли вместо изображения поставить видео? очевидно, на видео не должны появляться клавиши вперед, назад, стоп ... спасибо.

1 Ответ

0 голосов
/ 13 апреля 2020

Можете ли вы проверить, большой ли у вас png или нет. Потому что imageView обычно не любит большие изображения. И если вы все еще хотите впереди go, попробуйте изменить разрешение изображения, тогда оно будет работать нормально. Проверьте метод изменения размера из этого поста. Активность идет медленно с парой ImageView-ов

Надеюсь, что это полезно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...