Articles of android

获取片段的容器视图ID

我有一个片段添加使用 transaction.add(R.id.content, fragment, null); 我需要从这个开始新的片段。 但要做到这一点,我需要知道第一个片段的容器视图id(R.id.content在我的情况)。 我怎样才能得到这个? 我可以直接使用这个ID,但我想片段不应该知道这样的父母活动的细节。 例如,在这种情况下,将不可能在另一个活动中使用这个片段。 可能是从另一个“开始”片段是一个不好的做法,所有的片段处理逻辑应该由活动本身处理? 但创build好的片段序列看起来相当有用(例如detalView-> moreDetailView-> evenMoreDetailView)。

我怎样才能完全隐藏ExpandableListView的groupIndicator?

我想完全隐藏自定义ExpandableListView中的groupIndicator。 这里提供的例子似乎没有工作。 它build议做一个select器,并使用我复制的expList.setGroupIndicator(selector): <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/empty_icon"> <item android:state_empty="true" android:drawable="@android:color/transparent"/> <item android:state_expanded="true" android:drawable="@android:color/transparent" /> <item android:drawable="@android:color/transparent" /> </selector> 这给出了以下错误 ERROR/AndroidRuntime(10675): Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x12/d=0x0 a=2 r=0x7f0b0013} 使用android:id / empty替代颜色/透明的类似build议也是一样的。 我怎样才能完全隐藏组指标? 编辑:事实certificate,该代码是否工作…如果你把它放在可绘制的资源文件夹,而不是布局。

在ViewPager中区分用户滚动和编程页面更改

我在我的应用程序中有一个android.support.v4.view.ViewPager ,我想区分编程启动的平滑滚动和用户启动的触摸滚动。 我已经看了ViewPager.OnPageChangeListener ,我相信答案可能在那里,但我不知道如何。

在android中定义button事件的最佳做法

我有一个由多个Button组成的XML定义的Layout 。 目前我在OnCreate方法中这样做来定义针对button的事件处理程序: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button newPicButton = (Button)findViewById(R.id.new_button); newPicButton.setOnClickListener(btnListener); ….. similarly for other buttons too ….. } 在Button的onClick事件中,我启动了一个相机Intent来获取图片,并在onActivityResultcallbackonActivityResult我再一次设置事件处理器,并设置View如下: protected void onActivityResult(int requestCode, int resultCode, Intent data) { setContentView(R.layout.main); Button newPicButton = (Button)findViewById(R.id.new_button); newPicButton.setOnClickListener(btnListener); …similarly for other buttons too } 我是Android新手,每次重新定义一个事件的方法对我来说似乎都很肮脏。 我想知道在像这样的场景中定义button事件处理程序的最佳做法是什么。 编辑:粘贴我的完整课程 public class CameraAppActivity extends Activity { /** […]

如何打开没有操作栏的导航抽屉,只需打开一个button

我有一个没有任何操作栏的导航栏(我不想要一个操作栏)。 我正在努力使我有一个可以打开导航抽屉的button。 我知道有一个叫做openDrawer的DrawerLayout方法http://developer.android.com/reference/android/support/v4/widget/DrawerLayout.html#openDrawer(android.view.View) 我不知道如何使用它,但我已经尝试做一个button,单击时,运行此方法: DrawerLayout mDrawerLayout = (DrawerLayout) getView().findViewById(R.id.drawer_layout); mDrawerLayout.openDrawer(mDrawerLayout); 当我点击它,它给了我一个Java NullPointerException。 有人有什么想法吗? 编辑:这段代码是在一个片段,我试图引用片段外的抽屉布局。 我用debugging器,它显示mDrawlerLayout是NULL。 有什么build议? 谢谢!

如何在android中显示多个通知

我只收到一个通知,如果有另一个通知来,它将取代以前的一个,这里是我的代码 private static void generateNotification(Context context, String message, String key) { int icon = R.drawable.ic_launcher; long when = System.currentTimeMillis(); NotificationManager notificationManager = (NotificationManager) context .getSystemService(Context.NOTIFICATION_SERVICE); Notification notification = new Notification(icon, message, when); String title = context.getString(R.string.app_name); Intent notificationIntent = new Intent(context, FragmentOpenActivity.class); notificationIntent.putExtra(key, key); // set intent so it does not start a new activity […]

Android ListView与onClick项目

我是一个新的程序员,在Android中是新的。 我使用这个例子http://www.androidhive.info/2012/09/android-adding-search-functionality-to-listview/ ,它工作得很好。 现在我想让这些项目(戴尔,三星Galaxy S3等)调用一个函数来打开一个新的活动,每个不同的信息。 例如: 如果我碰戴尔,一个新的活动必须显示给我关于戴尔的信息。 如果我碰三星,也是一样的。 我谷歌search,但找不到任何有用的,任何提示? 我认为这是基本的,但我是新的,所以我不知道从哪里开始

滑动ListView项目从右到左显示删除button

我有一个自定义ListView显示从数据库中select的单词列表。 当我刷这个列表视图项目我想显示删除button像下面的图像。 当我按下该button时,它将从数据库中删除并刷新列表视图。 米 我已经在这里看这个示例代码。 但它仍然不起作用。

如何降级Android ADT?

最新的Android ADT更新毁了我的一生。 有没有什么办法可以下载和安装旧的ADT(在14之前)到一个干净的Eclipse安装? 我没有find任何文件。 编辑:我不需要这个了,但如果有人知道答案,继续说下去。

如何每X秒运行一个方法

我正在开发一个Android 2.3.3应用程序,我需要每X秒运行一个方法。 在iOS中,我有NSTimer ,但在Android中,我不知道要使用什么。 有人推荐我Handler ; 另一个推荐我AlarmManager,但我不知道哪种方法更适合NSTimer 。 这是我想在Android中实现的代码: timer2 = [ NSTimer scheduledTimerWithTimeInterval:(1.0f/20.0f) target:self selector:@selector(loopTask) userInfo:nil repeats:YES ]; timer1 = [ NSTimer scheduledTimerWithTimeInterval:(1.0f/4.0f) target:self selector:@selector(isFree) userInfo:nil repeats:YES ]; 我需要一些像NSTimer一样的东西。 你推荐我什么?