1fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes/* 2fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * Copyright (C) 2014 The Android Open Source Project 3fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * 4fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * Licensed under the Apache License, Version 2.0 (the "License"); 5fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * you may not use this file except in compliance with the License. 6fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * You may obtain a copy of the License at 7fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * 8fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * http://www.apache.org/licenses/LICENSE-2.0 9fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * 10fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * Unless required by applicable law or agreed to in writing, software 11fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * distributed under the License is distributed on an "AS IS" BASIS, 12fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * See the License for the specific language governing permissions and 14fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * limitations under the License. 15fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes */ 16fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes 17fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banespackage android.support.v4.view; 18fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes 19fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banesimport android.content.Context; 20fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banesimport android.util.AttributeSet; 21fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banesimport android.view.View; 22fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes 23fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes/** 24fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * Used with {@code LayoutInflaterCompat.setFactory()}. Offers the same API as 25fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * {@code LayoutInflater.Factory2}. 26fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes */ 27fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banespublic interface LayoutInflaterFactory { 28fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes 29fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes /** 30fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * Hook you can supply that is called when inflating from a LayoutInflater. 31fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * You can use this to customize the tag names available in your XML 32fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * layout files. 33fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * 34fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * @param parent The parent that the created view will be placed 35fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * in; <em>note that this may be null</em>. 36fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * @param name Tag name to be inflated. 37fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * @param context The context the view is being created in. 38fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * @param attrs Inflation attributes as specified in XML file. 39fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * 40fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * @return View Newly created view. Return null for the default 41fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes * behavior. 42fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes */ 43fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes public View onCreateView(View parent, String name, Context context, AttributeSet attrs); 44fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes 45fd1eb27a3700de31507de34fd1bcc51830fe876cChris Banes} 46