小编use*_*451的帖子

(已弃用)片段onOptionsItemSelected未被调用

编辑: 这个问题是针对已弃用的sherlock操作栏.现在应该使用Android支持库

我添加了一个名为share for action的操作栏菜单选项fragment,但是没有捕获选择事件

我这样添加它

@Override
public void onCreateOptionsMenu (Menu menu, MenuInflater inflater) {
    MenuItem item = menu.add(0, 7,0, R.string.share);
    item.setIcon(R.drawable.social_share).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
}
Run Code Online (Sandbox Code Playgroud)

试图捕捉它在这两个fragmentfragment activity类似

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
        case 7:
            Intent share = new Intent(Intent.ACTION_SEND);
            share.setType("text/plain");
            share.putExtra(Intent.EXTRA_TEXT, "I'm being sent!!");
            startActivity(Intent.createChooser(share, "Share Text"));
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}
Run Code Online (Sandbox Code Playgroud)

我有setHasOptionsMenu(true);onCreate().

android android-fragments android-actionbar

80
推荐指数
4
解决办法
6万
查看次数

以编程方式多次更改操作栏颜色

我在用

getSherlockActivity().getSupportActionBar().setBackgroundDrawable(new ColorDrawable(0xff00ACED));
Run Code Online (Sandbox Code Playgroud)

要更改片段中操作栏的颜色,它可以正常工作.但是,如果我打开这个片段,然后打开另一个片段,调用此方法使用不同的颜色,操作栏不会更改为所需的颜色.相反,它变成白色而不是我设置的颜色.

android

50
推荐指数
5
解决办法
5万
查看次数

new Date(毫秒)返回无效日期

我试图使用javascript将毫秒转换为日期:

new Date(Milliseconds); 
Run Code Online (Sandbox Code Playgroud)

构造函数,但是当我给它一个毫秒值,例如1372439683000时,它返回无效日期.如果我转到一个将毫秒转换为日期站点,它将返回正确的日期.

有什么想法吗?

javascript time date milliseconds

44
推荐指数
2
解决办法
4万
查看次数

Android单元测试没有嘲笑

我按照了这个指南 https://sites.google.com/a/android.com/tools/tech-docs/unit-testing-support, 但我遇到了这个错误:

junit.framework.AssertionFailedError: Exception in constructor: testSaveJson (java.lang.RuntimeException: Method put in org.json.JSONObject not mocked. See https://sites.google.com/a/android.com/tools/tech-docs/unit-testing-support for details.
Run Code Online (Sandbox Code Playgroud)

我按照指南的说法修改了Gradle,但它并没有什么区别

 testOptions { 
    unitTests.returnDefaultValues = true
  }
Run Code Online (Sandbox Code Playgroud)

junit android unit-testing

44
推荐指数
3
解决办法
2万
查看次数

导航抽屉图标未显示(Sherlock操作栏)

让导航抽屉与sherlock操作栏一起使用,但是我无法显示3行图标(如gmail)而不是正常的向上按钮"<".这是我的代码ic_drawer是gmail使用的3行图标

getSupportActionBar().setIcon(R.drawable.myIcon);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setDisplayShowTitleEnabled(true);
mDrawerToggle = new ActionBarDrawerToggle(this, mDrawer,
            R.drawable.ic_drawer, R.string.menu_open, R.string.menu_close) {
        public void onDrawerClosed(View view) {

            super.onDrawerClosed(view);
        }

        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
        }
    };
Run Code Online (Sandbox Code Playgroud)

android

19
推荐指数
2
解决办法
1万
查看次数

带有自定义适配器和过滤器的Autocompletetextview

我想设置自定义ArrayAdapter为我AutoCompleteTextView这样的

public class AutoCompleteContactArrayAdapter extends
    ArrayAdapter<Map<String, String>> implements Filterable {
private Context mContext;
private List<Map<String, String>> mContactList;

public AutoCompleteContactArrayAdapter(Context context,
        List<Map<String, String>> objects) {
    super(context, R.layout.auto_contact_list, objects);
    mContext = context;
    mContactList = objects;
    // TODO Auto-generated constructor stub
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = (LayoutInflater) mContext
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View rowView = inflater.inflate(R.layout.auto_contact_list, parent,
            false);
    TextView nameView = (TextView) rowView.findViewById(R.id.ccontName);
    TextView phoneView = (TextView) rowView.findViewById(R.id.ccontNo);
    TextView typeView = (TextView) rowView.findViewById(R.id.ccontType); …
Run Code Online (Sandbox Code Playgroud)

android

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

ViewPager.PageTransformer无法解析为某种类型

我得到的ViewPager.PageTransformer无法解析为我已经将sdk更新到最新的类型并且在我的libs文件夹中有最新版本的android-support-v4我读了这篇文章ViewPager.PageTransformer显示错误ViewPager无法重新解析为我正在使用androidsupportv4 jar修订版9并执行相同的步骤,但它不起作用.

android android-support-library

7
推荐指数
3
解决办法
7819
查看次数

Android GestureListener未检测到事件

我在网上看了很多例子,他们都有这样实现的gesturelistener.我不能让android拿起手势事件,myText的值不会改变,我在logcat中没有得到任何输出.我究竟做错了什么?

public class MainActivity extends Activity {
private GestureDetector gDetector;
private TextView myText;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    gDetector = new GestureDetector(this, new MyOnGestureListener());
    myText = (TextView) findViewById(R.id.mytext);
    myText.setText("Test");

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);

    return true;
}

class MyOnGestureListener extends SimpleOnGestureListener implements
        OnGestureListener {
    @Override
    public boolean onDown(MotionEvent e) {
        Log.d("Main", "did");
        myText.setText("hi");
        // TODO Auto-generated method stub
        return true;
    }

    @Override
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
            float velocityY) { …
Run Code Online (Sandbox Code Playgroud)

android

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

Google OAuth:如何使用刷新令牌?

我可以将我的 Android 设备上的一次性使用令牌交换为访问令牌刷新令牌。我想弄清楚如何使用刷新令牌

我发现适用于 HTTPS 请求,但我想知道 Java SDK 中是否有一些地方可以处理刷新?

java android google-oauth

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

播放歌曲时,MediaController播放按钮不会更新

我正在尝试使用mediacontroller播放音频.我能够让音频工作但是当歌曲开始播放时我的mediacontroller上的播放按钮不会更新.如果按下mediacontroller上的播放按钮,它会暂停歌曲并寻找进度条.然后,如果我按暂停,它会再次播放该歌曲.我在打电话

mp.start() 
Run Code Online (Sandbox Code Playgroud)

这不会更新播放按钮.当我打电话开始时,如何让按钮更改为暂停按钮?

public class QuickMusicPlayer implements MediaController.MediaPlayerControl {

private final MediaPlayer mMediaPlayer;
private final MediaController mMediaController;
private Activity mActivity;

public QuickMusicPlayer(View anchorView, Activity activity) {
    mActivity = activity;
    mMediaPlayer = new MediaPlayer();
    mMediaController = new MediaController(activity);
    mMediaController.setMediaPlayer(this);
    mMediaController.setAnchorView(anchorView);
    mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
            mp.start();
        }
    });
}

public void setUrl(String url) {
    mMediaPlayer.reset();
    if (TextUtils.isEmpty(url)) {
        ViewUtil.showCroutonAlert(mActivity, R.string.cant_play_music);
    } else {
        try {

            mMediaPlayer.setDataSource(url);
            mMediaPlayer.prepareAsync();
            mMediaController.setEnabled(true);
            mMediaController.show(0);
        } catch (IOException e) {
            e.printStackTrace();
        } …
Run Code Online (Sandbox Code Playgroud)

android android-mediaplayer

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