小编con*_*n_9的帖子

Spinner:如何知道项目选择是通过编程方式更改还是通过用户操作通过UI更改

我有运行OnItemSelectedListenerspinner事件的代码.所以,当我在方法中时:

public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
    // I want to do something here if it's a user who changed the the selected item
}
Run Code Online (Sandbox Code Playgroud)

...我如何知道项目选择是通过编程方式完成还是通过用户操作通过UI完成?

android

12
推荐指数
3
解决办法
4236
查看次数

使谷歌语音识别哔声静音

我有一个测试应用程序,它以连续的方式使用Google语音,并且每次调用Google识别服务时都会发出哔声.我试图摆脱哔哔声.我已经读过静音音乐流的线程,但这对我不起作用.

我试图找到蜂鸣声文件的位置,所以我可以去系统中删除它.我按照这个线程,但我在5.0系统文件中看不到该文件.

android speech-recognition voice-recognition android-speech-api google-voice-search

9
推荐指数
2
解决办法
9044
查看次数

sd-card删除的监听者

我试图做类似的事情: android:如何听"sd卡意外删除", 但onReceive的听众永远不会被调用,当我没有安装SD卡或我删除SD卡.这是代码.

public class MyClass1  extends Activity{
    BroadcastReceiver mSDCardStateChangeListener = null;
     /** Called when the activity is first created. */
    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    mSDCardStateChangeListener = MyClass2.registerSDCardStateChangeListener(this);
   //some code which needs SDCard and throws unhandled exception if sdcard is not there 

}

@Override 
    protected void onDestroy () 
    {
        MyClass2.unRegisterSDCardStateChangeListener(this, mSDCardStateChangeListener);
        super.onDestroy();
    }



//in MyClass2
public static BroadcastReceiver registerSDCardStateChangeListener(Activity act) {

        BroadcastReceiver mSDCardStateChangeListener = new BroadcastReceiver() {

            @Override
            public void onReceive(Context arg0, Intent arg1) {
                 String action = …
Run Code Online (Sandbox Code Playgroud)

android

5
推荐指数
1
解决办法
5326
查看次数

滚动视图中的线性布局不占据整个高度

我有一个线性布局说V1,里面L1我有一个scrollview V2,内部scrollview我有另一个线性布局V3,现在V3有一个gridtview V4.pbm是如果我的列表视图说了6个项目,只有2个是可见的,休息时我必须滚动,即使我看到剩余的空间很大.我设置背景颜色(V2背景颜色:品红色,为V3绿色)和观察到的这样的:V2仅覆盖一小部分说V2的30%,V4覆盖完整V3整个V1 V3覆盖.所以我已经做了几乎所有我可以遵循的一切,以使V3覆盖所有的V2,但没有成功.我已经浪费了很多时间,请告诉我这是否有任何解决方案.

//滚动型PARAMS V2 LinearLayout.LayoutParams svParams =新LinearLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT,1.0F);

所以我试过的所有这些东西都行不通:

V3.getLayoutParams().height = V2.getHeight();
//((LinearLayout)gv.getParent()).getLayoutParams().height = LinearLayout.LayoutParams.FILL_PARENT;

//((LinearLayout.LayoutParams)((LinearLayout)gv.getParent()).getLayoutParams()).weight = 1.0F;
//((LinearLayout) ((LinearLayout)gv.getParent()).getParent()).getLayoutParams().height = LinearLayout.LayoutParams.FILL_PARENT;
Run Code Online (Sandbox Code Playgroud)

但是,如果我为V4提供一些硬编码值,它会增加其所有父视图的高度,但我不想这样做,这在我的应用程序中是不可行的

android

3
推荐指数
1
解决办法
6123
查看次数