例如:当我们使用dimens文件夹作为文本大小值时,我们会转到dimen(小)来更改小布局(屏幕)的文本大小。 所以我想对图像做同样的思考,我想将hdpi图像的size(exp)与适当的布局相关联(大小:小或大等)
我认为问题可能出在这里,因为它包含有关“标题”和全屏显示的几行内容 这是启动代码:
package com.medanis.fneclis
import android.content.DialogInterface
import android.content.Intent
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.os.Handler
import android.view.View
import android.view.ViewConfiguration
import android.view.Window
import android.view.WindowManager
import android.widget.MediaController
import pl.droidsonroids.gif.GifDrawable
import pl.droidsonroids.gif.GifImageButton
class Splash : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//hiding title bar of this activity
window.requestFeature(Window.FEATURE_NO_TITLE)
//making this activity full screen
window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN)
setContentView(R.layout.activity_splash)
//2.63second splash time
Handler().postDelayed({
//start main activity
startActivity(Intent(this, MainActivity::class.java))
//finish this activity
finish()
},2630)
val gib = GifImageButton(this)
setContentView(gib)
gib.setImageResource(R.drawable.fneclis_splash_bg)
val mc = MediaController(this)
mc.setMediaPlayer(gib.drawable as GifDrawable)
mc.setAnchorView(gib)
gib.setOnClickListener(object : DialogInterface.OnClickListener, View.OnClickListener {
override fun onClick(p0: View?) {
mc.show()
}
override fun onClick(p0: DialogInterface?, p1: Int) {
mc.show()
}
})
}
}
答案 0 :(得分:1)
最佳方法在下面的链接中有完整描述。
https://developer.android.com/training/multiscreen/screendensities
答案 1 :(得分:0)
您必须为不同尺寸的屏幕创建不同的文件夹
drawable-sw720dp 10.1” tablet 1280x800 mdpi
drawable-sw600dp 7.0” tablet 1024x600 mdpi
drawable-sw480dp 5.4” 480x854 mdpi
drawable-sw480dp 5.1” 480x800 mdpi
drawable-xxhdpi 5.5" 1080x1920 xxhdpi
drawable-xxxhdpi 5.5" 1440x2560 xxxhdpi
drawable-xhdpi 4.7” 1280x720 xhdpi
drawable-xhdpi 4.65” 720x1280 xhdpi
drawable-hdpi 4.0” 480x800 hdpi
drawable-hdpi 3.7” 480x854 hdpi
drawable-mdpi 3.2” 320x480 mdpi
drawable-ldpi 3.4” 240x432 ldpi
drawable-ldpi 3.3” 240x400 ldpi
drawable-ldpi 2.7” 240x320 ldpi
然后将相同大小的图像放在相同的文件夹中。
答案 2 :(得分:0)
很简单,转到android res目录,为每个分辨率创建drawable-XXX目录,如下所示
/root
|
-/res
|
/drawable-ldpi
|
/sample_image.png
/drawable-mdpi
|
/sample_image.png
等等。
创建具有不同分辨率的sample_image.png并将它们以相同的名称和不同的分辨率放在相应的目录中。
仅在代码中引用它,例如@ drawable / sample_image之类的xml文件中引用它,而在R.drawable.sample_image中引用它的代码中
操作系统本身将根据设备屏幕分辨率决定使用哪个目录
答案 3 :(得分:0)
感谢所有人,我只是尝试删除了这部分代码,所以一切正常。再次谢谢你^ _ ^
val gib = GifImageButton(this)
setContentView(gib)
gib.setImageResource(R.drawable.fneclis_splash_bg)
val mc = MediaController(this)
mc.setMediaPlayer(gib.drawable as GifDrawable)
mc.setAnchorView(gib)
gib.setOnClickListener(object : DialogInterface.OnClickListener, View.OnClickListener {
override fun onClick(p0: View?) {
mc.show()
}
override fun onClick(p0: DialogInterface?, p1: Int) {
mc.show()
}
})