Dialog源码之语法学习括号直接判断即无if的判断

本文探讨了Dialog类中处理搜索请求的方法onSearchRequested()。该方法通过SearchManager启动搜索,并检查是否有关联的Activity来确定搜索行为。若无关联Activity,则默认进行全局搜索。

Dialog.java类里面,这个函数响应搜索的请求
/**
     * This hook is called when the user signals the desire to start a search.
     */
    public boolean onSearchRequested() {
        final SearchManager searchManager = (SearchManager) mContext
                .getSystemService(Context.SEARCH_SERVICE);

        // can't start search without an associated activity (e.g a system dialog)
        if (!searchManager.hasIdent()) {
            return false;
        }

        // associate search with owner activity if possible (otherwise it will default to
        // global search).

        final ComponentName appName = getAssociatedActivity();
        final boolean globalSearch = (appName == null);
        searchManager.startSearch(null, false, appName, null, globalSearch);
        dismiss();
        return true;
    }

 

红色的那句话对我来说比较新奇,是新的语法,我要学习;

 

意思就是说:如果appName是null  的话就返回true,否则就是false

 

这函数的注释挺有意思,不和Activity关联的Dialog不能打开搜索,呵呵,看来验证了我的一个猜测,就是对话框的制造的种类。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值