Tag: xml

GridLayout在Kotlin?

我正在尝试在我的Kotlin Android应用程序中获得2×6(WxH)GridLayout。 我有我的XML和片段/适配器设置为一个RecyclerView,但是有点不知所措,如何应用一个GridLayout到这个。 我如何让我的项目(listview_row_enrollments.xml)显示在一个网格,而不是一个水平的列表? EnrollmentFragment.kt class EnrollmentsFragment : Fragment() { // TODO: Rename and change types of parameters private var mParam1: String? = null private var mParam2: String? = null private var mListener: OnFragmentInteractionListener? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) if (arguments != null) { mParam1 = arguments.getString(ARG_PARAM1) mParam2 = arguments.getString(ARG_PARAM2) } } […]

错误从Kotlin资源获取xml

我正在学习Kotlin。 请帮帮我。 我不知道这里发生了什么错误。 主要活动 class Login : AppCompatActivity() { private var shakeAnim: Animation? = null private var xrp: XmlResourceParser? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_login) init() } private fun init() { shakeAnim = AnimationUtils.loadAnimation(this, R.anim.shake) xrp = resources.getXml(R.drawable.text_selector) // Error Ensures that resource id’s passed to APIs are of the right type; […]

为什么添加视图到我的布局会改变整个布局的宽度?

我添加了一个视图到我的布局的底部添加一个行分隔符在这个元素的末尾。 问题是,在布局中放置此视图后填充整个屏幕的宽度,但是当我把视图,它显示为正确的大小(在我的测试中大约400dp)。 为什么添加的视图会导致布局填满整个屏幕。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="start" android:orientation="vertical" android:paddingLeft="6dp" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/text_label" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:textColor="@android:color/darker_gray" android:textSize="12sp" tools:text="Hello, Label" android:paddingBottom="6dp" android:paddingLeft="6dp"/> <TextView android:id="@+id/text_error" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:textColor="@color/sr_red" android:textSize="12sp" tools:text="Error!"/> </LinearLayout> <!– this View causes the parent layout to fill the whole screen width–> <View android:layout_width="wrap_content" android:layout_height="1dp" […]

如何创建一个按钮的自定义形状,但保持可点击和可聚焦

我想制作一个自定义形状的按钮,但是当我尝试更改形状时,却无法点击/调整焦点,我该怎么做?

Android无法实例化一个或多个类

我有一个正在运行的项目,所有的XML文件都显示错误消息“Android无法实例化一个或多个类”。 但该计划仍然有效。 我清理了缓存并使用了无效缓存并重新启动。 这里充分的消息:下面的类不能即时 – android.support.v7.widget.AppCompatTextView 提示:在自定义视图中使用View.isInEditMode()可以在IDE中显示时跳过代码或显示示例数据。 java.lang.NullPointerException at android.content.res.Resources_Delegate.getValue(Resources_Delegate.java:788) at android.content.res.Resources.getValue(Resources.java:1286) at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:212) at android.support.v4.content.res.ResourcesCompat.getFont(ResourcesCompat.java:206) at android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.java:119) at android.support.v7.widget.AppCompatTextHelper.updateTypefaceAndStyle(AppCompatTextHelper.java:208) at android.support.v7.widget.AppCompatTextHelper.loadFromAttributes(AppCompatTextHelper.java:152) at android.support.v7.widget.AppCompatTextHelperV17.loadFromAttributes(AppCompatTextHelperV17.java:38) at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:81) at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:71) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:475) at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:250) at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:213) at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadClass(LayoutlibCallbackImpl.java:193) at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:333) at android.view.BridgeInflater.onCreateView(BridgeInflater.java:152) at android.view.LayoutInflater.onCreateView(LayoutInflater.java:717) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:785) at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:222) […]

为什么这个anko布局不正确地处理系统ui?

我尝试了Anko,不能得到这个布局来处理像xml版本的系统用户界面。 我认为它与主题有关,以及它们是如何通过xml解析来处理的。 这里是截图: 这里是anko DSL组件: class ActivityMainLayout : AnkoComponent<Activity> { lateinit var drawerLayout: DrawerLayout lateinit var appBarLayout: AppBarLayout lateinit var toolbar: Toolbar lateinit var text: TextView lateinit var navHeader: NavigationView lateinit var toggle: ActionBarDrawerToggle override fun createView(ui: AnkoContext<Activity>): View = with(ui) { drawerLayout = drawerLayout { fitsSystemWindows = true coordinatorLayout { appBarLayout = appBarLayout(theme = […]

无效的可绘制标记动画矢量

我已经看遍了所有的stackoverflow,没有问题能够解决我的问题。 我试图播放一个带有API 15的设备上绘制的动画矢量,但我一直得到下面的运行时异常: com.karim.test E/AvdcInflateDelegate: Exception while inflating <animated-vector> android.content.res.Resources$NotFoundException: File res/drawable-ldpi-v4/feedback.png from xml type xml resource ID #0x7f020066 at android.content.res.Resources.loadXmlResourceParser(Resources.java:2152) at android.content.res.Resources.loadXmlResourceParser(Resources.java:2107) at android.content.res.Resources.getXml(Resources.java:906) at android.support.graphics.drawable.VectorDrawableCompat.create(VectorDrawableCompat.java:408) at android.support.graphics.drawable.AnimatedVectorDrawableCompat.inflate(AnimatedVectorDrawableCompat.java:356) at android.support.graphics.drawable.AnimatedVectorDrawableCompat.createFromXmlInner(AnimatedVectorDrawableCompat.java:162) at android.support.v7.widget.AppCompatDrawableManager$AvdcInflateDelegate.createFromXmlInner(AppCompatDrawableManager.java:905) at android.support.v7.widget.AppCompatDrawableManager.loadDrawableFromDelegates(AppCompatDrawableManager.java:356) at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:197) at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:192) at android.support.v7.widget.AppCompatImageHelper.setImageResource(AppCompatImageHelper.java:66) at android.support.v7.widget.AppCompatImageView.setImageResource(AppCompatImageView.java:71) at com.karim.test.MainActivity.initialize(MainActivity.java:428) at com.karim.test.MainActivity.onCreate(MainActivity.java:210) Caused by: java.io.FileNotFoundException: Corrupt XML binary file at […]

android,将XML布局视图添加到自定义类中的充气视图中

我还没有在互联网上找到一个答案一段时间,现在我问你,如果你能帮助我。 短:我应该如何重写addView()(或其他)来添加在XML中定义的视图到我的“自定义视图膨胀的XML布局” 长:我想为我的android应用程序创建一个自定义视图,所以我从RelativeLayout创建一个干净的子类。 在这里,我让Inflater加载一个xml布局来获得一个不错的风格。 但现在,我想在自定义视图中添加一些东西,但不想在程序中添加它(这个工作原理),但是使用xml。 我不能跨越我的脑海找到解决方案的差距… 代码:自定义类: public class Slider extends RelativeLayout { private RelativeLayout _innerLayout; public Slider(Context context) { super(context); init(); } public Slider(Context context, AttributeSet attrs) { super(context, attrs); init(); } protected void init() { LayoutInflater layoutInflater = (LayoutInflater) this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); _innerLayout = (RelativeLayout) layoutInflater.inflate(R.layout.layout_r, this); } @Override public void addView(View child) { //if […]

我如何使用Android的DropDownPreference?

我正在尝试使用DropDownPreference构建一个首选项屏幕。 最初我在我的gradle文件中使用了下面的代码compile 'com.android.support:preference-v14:25.3.1'但是当我注意到DropDownPreference时切换到compile 'com.android.support:preference-v7:25.3.1'包含在v7中,而不是v14(我认为v14也可能包括v7中的所有内容,但我猜不是?)。 我的XML看起来像这样: <?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/pref_title" android:layout_height="match_parent" android:layout_width="match_parent"> <PreferenceCategory android:key="pref_video" android:title="@string/pref_video_title"> <android.support.v7.preference.DropDownPreference android:key="pref_video_quality" android:title="@string/pref_video_quality" android:summary="@string/pref_summary_video_quality" android:entries="@array/pref_entries_video_quality" android:entryValues="@array/pref_entries_video_quality" /> </PreferenceCategory> </PreferenceScreen> 我也试过DropDownPreference作为标签。 似乎没有任何工作。 当我尝试去应用程序中的我的首选项屏幕时,我总是得到一个Error inflating class DropDownPreference错误。 任何想法如何使用这个DropDownPreference? 谢谢! 编辑:添加错误消息: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.int_a.giantbombforandroid/com.app.int_a.giantbombforandroid.main.SettingsActivity}: java.lang.ClassCastException: android.support.v7.preference.DropDownPreference cannot be cast to android.preference.Preference 编辑:AndroidManifest.xml中的SettingsActivity声明 <activity android:name=".main.SettingsActivity" android:configChanges="orientation|screenSize" android:theme="@style/PreferenceThemeOverlay.v14.Material"> </activity>

在Android中,如何在WebView加载URL时显示进度条?

我是Android应用程序开发和学习的新手。 我开发了一个使用WebView加载网站链接的应用程序。 它工作正常。 但是当WebView加载页面时,我正面临着显示和隐藏进度条的问题。 当WebView加载网站的主链接和内部链接并在页面完全加载时隐藏进度条时,我想要显示一个进度条(只在中心旋转)。 我的Java代码: package in.matebook.myapplication; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); WebView myWebView = (WebView) findViewById(R.id.webView); myWebView.setWebViewClient(new MyWebViewClient()); WebSettings webSettings = myWebView.getSettings(); webSettings.setJavaScriptEnabled(true); myWebView.loadUrl("http://www.labnol.org"); } private […]