我正在尝试创build仅在用户首次安装我的应用程序时才启动的半透明演示屏幕。 以下是Pulse News应用程序的一个示例: Galaxy Nexus Nexus One 我希望用户能够通过几个这样的透明演示页面进行轻扫,而不是使用“点击即可解散”function。 对于我的第一次尝试,我从ViewPagerIndicator库中修改了一个示例。 我在每个视图分页器的片段中使用了ImageView中的半透明PNG。 然后,我在“主要活动”的onCreate方法中将其作为“演示活动”启动。 问题:“主要活动”无法在背景中看到 – 而只是黑色。 我在这里尝试了解决scheme,但是这并没有解决问题。 有没有更好的方法来创build这样的事情,还是我在正确的轨道上? 我还有另一个相关的问题,这取决于如何实施。 我正在尝试覆盖文本和箭头,以便在背景中指向特定的UI组件。 通过使用具有文本和箭头的PNG,很可能无法在不同的设备上正确缩放。 也就是说,箭头可能不一定指向背景中正确的UI组件。 有没有办法解决这个问题呢? 谢谢! 这是我第一次尝试的代码: DemoActivity.java public class DemoActivity extends FragmentActivity { DemoFragmentAdapter mAdapter; ViewPager mPager; PageIndicator mIndicator; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.demo_activity); mAdapter = new DemoFragmentAdapter(getSupportFragmentManager()); mPager = (ViewPager)findViewById(R.id.pager); mPager.setAdapter(mAdapter); //mPager.setAlpha(0); UnderlinePageIndicator indicator […]
在今天AppCompat更新出来之前,我可以改变Android L中button的颜色,但不能更改旧版本的颜色。 包括新的AppCompat更新后,我无法更改任何版本的颜色,当我尝试button只是消失。 有谁知道如何更改button的颜色? 下面的图片显示了我想要实现的: 白色的button是默认的,红色的是我想要的。 这是我以前在修改styles.xmlbutton的颜色时所做的: <item name="android:colorButtonNormal">insert color here</item> 并dynamic地做到这一点: button.getBackground().setColorFilter(getResources().getColor(insert color here), PorterDuff.Mode.MULTIPLY); 另外,我也从@android:style/Theme.Material.Light.DarkActionBar为Theme.AppCompat.Light.DarkActionBar
我想知道如何传递和阅读从另一个活动在一个活动中的string。 我有两个活动。 我会打电话给他们Activity1和Activity2。 我在Activity1中有一个名为course的string。 我想在Activity2中读取该string。 我试过这样做,但string空出来了。 public class Activity2 extends Activity1 { 我见过人们使用意图function,但我不知道如何使用它。 有什么build议么? 谢谢!
嗨,我开发一个应用程序来find最好的位置和短信到一个数字。 其工作正常与networking位置,但是当我想定位与GPS或标准类它的成为力量closures! 它如此友善地帮助我tnx。 package ir.M410.toolkit; import android.app.Service; import android.content.Intent; import android.location.Criteria; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.os.IBinder; import android.telephony.SmsManager; import android.util.Log; public class LocationFinder extends Service implements LocationListener{ double lat ,lon ; @Override public IBinder onBind(Intent arg0) { return null; } @Override public int onStartCommand(Intent intent, int flags, int startId) { […]
我有4个button和1个TextView。 我希望每个button在TextView中添加或减去与值(分析为int)不同的值。 当我点击其中一个button时,会引发致命错误(如下所示)。 我search了一些其他的Stackoverflow讨论,似乎没有任何工作。 这是我目前的活动: public class PaydownSnowball extends Activity { int aAmt; String debtExtraPayment; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.snowball); final Button plusTen = (Button) findViewById(R.id.buttonp10); final Button plusFive = (Button) findViewById(R.id.buttonp5); final Button minusFive = (Button) findViewById(R.id.buttonm5); final Button minusTen = (Button) findViewById(R.id.buttonm10); SharedPreferences sharedPref= getSharedPreferences("chaosdatasnowball", 0); debtExtraPayment = sharedPref.getString("debtExtraPayment", null); […]
我有一个sqlite数据库,将从一个web服务1000填充logging,然后我会插入更多的logging,每当我需要做的。 我的问题是在设备中存储sqlite数据库的方式,以保持插入(无论是在内部或外部存储器),即如果我把数据库存储在内部存储器,当内部存储器被填充我可以将其移动到外部并继续插入或者如果我把它存储在外部存储和外部存储得到填补,并有一个可用的空间在内部我可以移动到内部并继续插入数据..我很困惑这个可以帮助我的任何build议或链接请
有没有什么办法可以让android在运行时获得android设备虚拟键盘的高度。 其实我想显示键盘上方的文本框。
我在Android中的SQLite数据库有一个问题。 但是,当我在互联网上做了一个快速的研究,我怀疑这个问题与系统用户没有关系。 我的应用程序不被识别为授权用户访问数据库function。 我试图在堆栈溢出中应用可能的build议解决scheme,但没有一个有效。 这是我每次尝试使用数据库function时所面临的LogCat。 12-14 02:35:17.721 2953-3355/? E/DatabaseUtils﹕ Writing exception to parcel java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:13082) at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2038) at com.android.providers.settings.SettingsProvider.callFromPackage(SettingsProvider.java:577) at android.content.ContentProvider$Transport.call(ContentProvider.java:279) at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:273) at android.os.Binder.execTransact(Binder.java:388) at dalvik.system.NativeStart.run(Native Method) 我试图添加权限 android.permission.INTERACT_ACROSS_USERS_FULL 但仍然没有声音。 奇怪的是,当我尝试添加INTERNET权限的Android Studio […]
背景 创build一个具有大量高质量图像的应用程序,我决定将图像缩小到所需的大小(这意味着如果图像大于屏幕,则将其缩小)。 问题 我注意到,在某些设备上,如果图像缩小,它们会变得模糊/像素化,但是在相同的设备上,对于相同的目标imageView大小,如果图像不缩小,它们看起来就好了。 我试过了 我决定进一步检查这个问题,并创build了一个小的POC应用程序来显示这个问题。 在显示你的代码之前,下面是我正在谈论的一个演示: 看到差别有点难,但是你可以看到第二个是有点像素的。 这可以显示在任何图像上。 public class MainActivity extends Activity { @Override protected void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final ImageView originalImageView=(ImageView)findViewById(R.id.originalImageView); final ImageView halvedImageView=(ImageView)findViewById(R.id.halvedImageView); final ImageView halvedBitmapImageView=(ImageView)findViewById(R.id.halvedBitmapImageView); // final Bitmap originalBitmap=BitmapFactory.decodeResource(getResources(),R.drawable.test); originalImageView.setImageBitmap(originalBitmap); halvedImageView.setImageBitmap(originalBitmap); // final LayoutParams layoutParams=halvedImageView.getLayoutParams(); layoutParams.width=originalBitmap.getWidth()/2; layoutParams.height=originalBitmap.getHeight()/2; halvedImageView.setLayoutParams(layoutParams); // final Options options=new Options(); options.inSampleSize=2; // options.inDither=true; //didn't […]
我正在开发Galaxy S4的应用程序。 应用程序的要求之一是有一个包含1920×1080像素图像的SplashScreen。 它是一个高品质的.jpeg图像和图像的大小约2兆字节 。 问题是,一旦我启动应用程序,我得到一个OutOfMemoryError 。 我很惊讶,这已经发生在一个只有2兆字节的图像? 我怎样才能解决这个问题,并显示图像? 更改图像的尺寸或大小不是一个选项。 SplashScreen.java public class Splashscreen extends Activity { private static final int SPLASH_DURATION = 2000; private boolean isBackPressed = false; @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(LayoutParams.FLAG_FULLSCREEN, LayoutParams.FLAG_FULLSCREEN); super.onCreate(savedInstanceState); setContentView(R.layout.splashscreen); Handler h = new Handler(); h.postDelayed(new Runnable() { @Override public void run() { // check […]