我values在我的应用程序中创建不同的文件夹(values, values-ldpi, values-mdpi, values-hdpi, values-xhdpi, values-nodpi, values-w360dp-mdpi).但有些设备属于同一类别.但有不同的屏幕尺寸.但我看到根据设备密度给出字体大小这个@PankajSharma提供的答案建议创建像 -
res/values/dimens.xml
res/values-small/dimens.xml
res/values-normal/dimens.xml
res/values-xlarge/dimens.xml
Run Code Online (Sandbox Code Playgroud)
我想知道我的方式和其他方式有什么区别?我认为@PankajSharma提供的答案很简单.我也想知道哪种方式更好?
我WebView用来证明文本的合理性.我想知道-
是否可以在layout文件中设置文本大小?因为我想要不同的屏幕尺寸不同的文字大小.
并且还有一个问题是在2秒文本显示之后首先出现背景.是否可以立即显示文字?
文字大小为7-8行.
码-
public class Main extends Activity {
WebView mWebView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mWebView = (WebView) findViewById(R.id.webview);
String text = "<html><body>"+"<p align=\"justify\">"+getString(R.string.itext)+"</p>"+"</body></html>";
mWebView .loadData(text, "text/html", "utf-8");
mWebView .setBackgroundColor(Color.TRANSPARENT);
}
}
Run Code Online (Sandbox Code Playgroud)
XML的
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/light">
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/transparent"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) 当我将appcompat项目添加为库时,我得到以下错误:
- found 2 versions of android-support-v4.jar in the dependency list appcompat in android.
- `aapt.exe` has stop working.
Run Code Online (Sandbox Code Playgroud)
怎么解决这个?
我想显示3x3大小的gridview.我想根据设备大小设置高度和宽度.我正在参考这个链接.
主要活动-
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new ImageAdapter(this));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
activity_main-
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:columnWidth="90dp"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>
Run Code Online (Sandbox Code Playgroud)
编辑-
就像首先获得屏幕高度和宽度一样,每个项目的高度和宽度是屏幕高度和宽度值的1/3.
我在一个drawable文件夹中有一组图像.我有一个按钮将图像设置为设备屏幕上的壁纸.但是,当我将此图像设置为壁纸时,无论是缩放还是裁剪.我想图像应该适合屏幕尺寸.我在SO上看过很多链接,但没有链接对我有用.这是我到目前为止所尝试的代码.
码-
Bitmap bmap2 = BitmapFactory.decodeStream(getResources().openRawResource(mThumb[position]));
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int height = metrics.heightPixels;
int width = metrics.widthPixels;
Bitmap bitmap = Bitmap.createScaledBitmap(bmap2, width, height, true);
WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
try {
wallpaperManager.setBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
我还在清单中添加了以下行:
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS"/>
<uses-permission android:name="android.permission.SET_WALLPAPER" />
Run Code Online (Sandbox Code Playgroud) RAM我的电脑里有1 GB .首先,当我创建AVD与RAM大小为512 Eclipse.然后启动模拟器它的速度非常慢,并在运行应用程序时显示消息,你的RAM大小压缩到348.然后我删除了这个AVD并用RAM256 创建了新的.它的工作比前一个快,但速度仍然很慢.每当我关闭AVD它的节目停止响应消息并在一段时间后关闭.我正在使用3.2" QVGA(ADP2)(320*480:mdpi) AVD目标Android:4.2.2-API Level 17.我选择了快照选项.我已经看到很多关于此的问题,但大多数答案都表示这与系统无关RAM.
如果有人知道如何解决这个问题,并提高模拟器的速度帮助我.
在问这个问题之前,我没有看过西蒙提供的链接.是的,它是重复的.谢谢simon为我提供了这个链接和你的帮助.
在我的应用程序中,我首先使用textview来显示文本.然后我想证明文本的合理性,但在android中它不可能在textview中证明文本的合理性.为证明文本的合理性,我正在从这个链接中获取帮助.我正在关注@Kondzio提供的答案,但它不起作用.我不知道我的代码中有什么问题.
码-
public class Benefits extends Activity{
private Button back;
LinearLayout bText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.benefits);
WebView view = new WebView(this);
view.setVerticalScrollBarEnabled(true);
((LinearLayout)findViewById(R.id.bText)).addView(view);
view.loadData(getString(R.string.benef), "text/html", "utf-8");
back.setOnClickListener(new View.OnClickListener(){
public void onClick(View v)
{
finish();
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
XML的
<LinearLayout
android:id="@+id/bText"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="4"
android:gravity="center">
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
在strings.xml中 -
<string name="benef">
<![CDATA[
<html>
<head></head>
<body style="text-align:justify;color:gray;background-color:black;">
"1.some text\n
2.some text\n
.............
</body>
</html>
]]>
</string>
Run Code Online (Sandbox Code Playgroud)
我将scrollbarenabled设置为true以在我的文本上进行垂直滚动.
我想以编程方式创建3x3 gridview以显示图像.我想通过获取屏幕尺寸来设置每个项目的高度和宽度.喜欢:
DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int width = metrics.widthPixels;
int height = metrics.heightPixels;
Run Code Online (Sandbox Code Playgroud)
然后每个项目 width = screenWidth/3;
请有人帮我或一些链接供参考.
我正在创建gridview来显示图像.即使我设置垂直和水平间距,静止图像也会相互重叠.为什么会这样?以及如何解决这个问题?你可以在图像中看到这一点.
我的代码:
public class Images extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.images);
GridView gridView = (GridView) findViewById(R.id.grid_view);
gridView.setAdapter(new ImageAdapter(this));
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
Intent i = new Intent(getApplicationContext(), FullImageActivity.class);
i.putExtra("id", position);
startActivity(i);
}
});
}
public class ImageAdapter extends BaseAdapter {
private Context mContext;
int width, height;
public Integer[] mThumbIds = {
R.drawable.radhe, R.drawable.radhe,
R.drawable.radhe, R.drawable.radhe,
R.drawable.radhe, R.drawable.radhe,
R.drawable.radhe, R.drawable.radhe,
R.drawable.radhe
};
// Constructor
public …Run Code Online (Sandbox Code Playgroud) 我在Play商店发布了我的应用程序.现在在Crashes和ANR中,我在2个设备上遇到错误(Galaxy Note3和Galaxy Note II).我不知道如何解决这些错误,这是什么类型的错误?所以请帮我解决这些错误.在其他设备上,我没有收到任何报告.
错误 -
java.lang.OutOfMemoryError
at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:677)
at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:507)
at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:872)
at android.content.res.Resources.loadDrawable(Resources.java:3022)
at android.content.res.Resources.getDrawable(Resources.java:1586)
at android.view.View.setBackgroundResource(View.java:16120)
at com.info.laughingbuddha.Buddha4.onCreateView(Buddha4.java:21)
at android.support.v4.app.Fragment.performCreateView(Fragment.java:1500)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:927)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104)
at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1467)
at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:472)
at android.support.v4.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:163)
at android.support.v4.view.ViewPager.populate(ViewPager.java:1068)
at android.support.v4.view.ViewPager.populate(ViewPager.java:914)
at android.support.v4.view.ViewPager$3.run(ViewPager.java:244)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:803)
at android.view.Choreographer.doCallbacks(Choreographer.java:603)
at android.view.Choreographer.doFrame(Choreographer.java:572)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:789)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1259)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)
Buddha4.java-
package com.info.laughingbuddha;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import …Run Code Online (Sandbox Code Playgroud) android ×10
gridview ×2
dimensions ×1
eclipse ×1
performance ×1
ram ×1
resources ×1
screen-size ×1
scroll ×1
text-justify ×1
text-size ×1
textview ×1
wallpaper ×1
webview ×1