当前位置:  编程技术>移动开发
本页文章导读:
    ▪Service起步Activity        Service启动Activity 如要在Service中启动某个Activity, 示例如下(注意设置FLAG_ACTIVITY_NEW_TASK):             xxxActivity tb = new xxxActivity();                intent = new Intent();        .........
    ▪ 按Back key把Activity关掉即便有键盘的时候        按Back key把Activity关掉即使有键盘的时候 一般情况下,当键盘显示的时候,你按下back只会将键盘关掉,但有时候你想要不仅仅是把键盘关掉而已,还想把当前的activity/给关掉。那你可以重.........
    ▪ TextView增添删除线       TextView添加删除线 package lab.sodino.android; import android.app.Activity; import android.graphics.Color; import android.graphics.Typeface; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.text.Spannable; impo.........

[1]Service起步Activity
    来源: 互联网  发布时间: 2014-02-18
Service启动Activity
如要在Service中启动某个Activity, 示例如下(注意设置FLAG_ACTIVITY_NEW_TASK):


             xxxActivity tb = new xxxActivity();

                intent = new Intent();

                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

                intent.setClass(context, tb.getClass());

                startActivity(intent);


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ccwwff/archive/2010/11/02/5982533.aspx

    
[2] 按Back key把Activity关掉即便有键盘的时候
    来源: 互联网  发布时间: 2014-02-18
按Back key把Activity关掉即使有键盘的时候
一般情况下,当键盘显示的时候,你按下back只会将键盘关掉,但有时候你想要不仅仅是把键盘关掉而已,还想把当前的activity/给关掉。那你可以重写你的activity的main view,下面的例子是我看QucikSearchBox ap中SearchActivityView.java。
/*
 * Copyright (C) 2010 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.quicksearchbox.ui;

import android.app.Activity;
import android.content.Context;
import android.util.AttributeSet;
import android.view.KeyEvent;
import android.view.inputmethod.InputMethodManager;
import android.widget.RelativeLayout;

/**
 * Finishes the containing activity on BACK, even if input method is showing.
 */
public class SearchActivityView extends RelativeLayout {

    public SearchActivityView(Context context) {
        super(context);
    }

    public SearchActivityView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public SearchActivityView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    private Activity getActivity() {
        Context context = getContext();
        if (context instanceof Activity) {
            return (Activity) context;
        } else {
            return null;
        }
    }

    /**
     * Hides the input method.
     */
    protected void hideInputMethod() {
        InputMethodManager imm = (InputMethodManager)
                getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
        if (imm != null) {
            imm.hideSoftInputFromWindow(getWindowToken(), 0);
        }
    }

    /**
     * Overrides the handling of the back key to dismiss the activity.
     */
    @Override
    public boolean dispatchKeyEventPreIme(KeyEvent event) {
        Activity activity = getActivity();
        if (activity != null && event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
            KeyEvent.DispatcherState state = getKeyDispatcherState();
            if (state != null) {
                if (event.getAction() == KeyEvent.ACTION_DOWN
                        && event.getRepeatCount() == 0) {
                    state.startTracking(event, this);
                    return true;
                } else if (event.getAction() == KeyEvent.ACTION_UP
                        && !event.isCanceled() && state.isTracking(event)) {
                    hideInputMethod();
                    activity.onBackPressed();
                    return true;
                }
            }
        }
        return super.dispatchKeyEventPreIme(event);
    }
}


监测到按下bakc key之后hideInputMethod();隐藏键盘activity.onBackPressed();关闭Activity.这样达到的效果是:但你在SearchActivity中按下bakc之后就会退出这个acitvity,不管键盘是否显示。
1 楼 pc0de 2011-12-02  
谢谢分享啊  不过用你的方法除了点问题 我是重写的EditText  然后输入其它按键的时候  就变得很不河蟹了。      
2 楼 追求幸福 2011-12-05  
pc0de 写道
谢谢分享啊  不过用你的方法除了点问题 我是重写的EditText  然后输入其它按键的时候  就变得很不河蟹了。      

怎么会不和谐呢?怎样个不和谐呢?有这个KeyEvent.KEYCODE_BACK判断吗?

    
[3] TextView增添删除线
    来源: 互联网  发布时间: 2014-02-18
TextView添加删除线
package lab.sodino.android;

import android.app.Activity;
import android.graphics.Color;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ForegroundColorSpan;
import android.text.style.ImageSpan;
import android.text.style.StrikethroughSpan;
import android.text.style.StyleSpan;
import android.text.style.URLSpan;
import android.text.style.UnderlineSpan;
import android.widget.TextView;

public class AndroidAct extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        TextView txtInfo = new TextView(this);
        SpannableString ss = new SpannableString("红色打电话斜体删除线绿色下划线图片:.");
        ss.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        ss.setSpan(new URLSpan("tel:4155551212"), 2, 5,
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        ss.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 5, 7,
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        ss.setSpan(new StrikethroughSpan(), 7, 10,
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        ss.setSpan(new UnderlineSpan(), 10, 16,
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        ss.setSpan(new ForegroundColorSpan(Color.GREEN), 10, 15,
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        Drawable d = getResources().getDrawable(R.drawable.icon);
        d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
        ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
        ss.setSpan(span, 18, 19, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
        txtInfo.setText(ss);
        txtInfo.setMovementMethod(LinkMovementMethod.getInstance());
        setContentView(txtInfo);
    }
}

 

1 楼 lenomon 2012-03-12  
我看到的无下划线的,Android使用TextView实现无下划线超链接

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
编程技术 iis7站长之家
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3