API方法无限循环,我不明白

时间:2017-02-15 14:22:45

标签: java android layout-inflater

 
//LayoutInflater.java

public static LayoutInflater from(Context context) {//---(1)
    LayoutInflater layoutInflater =
            (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);//--(2)
    ...
    return layoutInflater;
}

//ContextThemeWrapper.java

@Override
public Object getSystemService(String name) {//--(2)
    if (LAYOUT_INFLATER_SERVICE.equals(name)) {
        if (mInflater == null) {
            mInflater = LayoutInflater.from(getBaseContext()).cloneInContext(this);//--(1)
        }
        return mInflater;
    }
    return getBaseContext().getSystemService(name);
}

注意两个方法(1)来自(Context)和(2)getSystemService(String)  无限地互相呼唤我不明白它是如何工作的..  我不认为它应该像这样工作。  我被卡住了。你能帮助我吗?我错过了什么吗?

0 个答案:

没有答案