标题栏与列表视图片断重叠 [英] Title Bar with Fragment overlap with list view

查看:170
本文介绍了标题栏与列表视图片断重叠的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Android的初学者。我有一个被单独放置在tool_bar.xml标题栏。现在我有两个片段。从一个片段我创建其中必须包括tool_bar.xml(标题栏)的新活动。
问题是,当我'包括'tool_bar.xml在新创建的activty的XML文件。标题栏以列表视图重叠。

我也尝试自定义标题栏的方法在创建方法,但没有奏效。我觉得包容tool_bar.xml将是方式,但它与列表视图重叠。

Tool_bar.xml:

 <?XML版本=1.0编码=UTF-8&GT?;
< android.support.v7.widget.Toolbar
机器人:layout_height =WRAP_CONTENT
机器人:layout_width =match_parent
机器人:背景=@彩色/ ColorPrimary
机器人:海拔=2DP
机器人:主题=@风格/ Base.ThemeOverlay.AppCompat.Dark
的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
机器人:layout_alignParentTop =真/>

Activty_category_blogs.xml(新建activty的XML)

 <?XML版本=1.0编码=UTF-8&GT?;<的RelativeLayout的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
的xmlns:工具=htt​​p://schemas.android.com/tool​​s的android:layout_width =FILL_PARENT
机器人:layout_height =WRAP_CONTENT工具:上下文=com.example.talha.test_fragement.Category_Blogs
的xmlns:广告=htt​​p://schemas.android.com/apk/res-auto>
<包括布局=@布局/ tool_bar/>
<的FrameLayout的android:layout_width =FILL_PARENT
    机器人:layout_height =WRAP_CONTENT>
    < ListView的机器人:ID =@机器人:ID /列表的android:layout_width =FILL_PARENT
        机器人:layout_height =WRAP_CONTENT
        机器人:layout_above =@ + ID / AD浏览机器人:分=#b5b5b5
        机器人:dividerHeight =1DP
        机器人:layout_alignParentBottom =真
        />
    < TextView的机器人:ID =@机器人:ID /空的android:layout_width =match_parent
        机器人:layout_height =match_parent机器人:比重=中心
        机器人:layout_gravity =右|顶/>< /&的FrameLayout GT;

编辑:

onCreate方法:

 保护无效的onCreate(捆绑savedInstanceState){
    super.onCreate(savedInstanceState);
    的setContentView(R.layout.activity_category__blogs);
    意向意图= getIntent();
    字符串消息= intent.getStringExtra(Tab2.EXTRA_MESSAGE);
    字符串link = +消息饲料=冠军?
    Log.d(叶类点击面值krne下一个活动我,你们链接bnta HY解析柯立业链接);
    loadPage(链接);
}

空对象引用的日志猫错误:

  2339年至2339年/ com.example.talha.test_fragement E / AndroidRuntime:致命异常:主要
工艺:com.example.talha.test_fragement,PID:2339
了java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.talha.test_fragement / com.example.talha.test_fragement.Category_Blogs}:显示java.lang.NullPointerException:尝试调用虚拟方法java.lang.CharSequence中的机器人。 support.v7.widget.Toolbar.getTitle()在空对象引用
        在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
        在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
        在android.app.ActivityThread.access $ 800(ActivityThread.java:144)
        在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1278)
        在android.os.Handler.dispatchMessage(Handler.java:102)
        在android.os.Looper.loop(Looper.java:135)
        在android.app.ActivityThread.main(ActivityThread.java:5221)
        在java.lang.reflect.Method.invoke(本机方法)
        在java.lang.reflect.Method.invoke(Method.java:372)
        在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:899)
        在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
 显示java.lang.NullPointerException:引起试图调用虚拟方法java.lang.CharSequence中android.support.v7.widget.Toolbar.getTitle()在空对象引用
        在android.support.v7.internal.widget.ToolbarWidgetWrapper<&初始化GT;(ToolbarWidgetWrapper.java:100)
        在android.support.v7.internal.widget.ToolbarWidgetWrapper<&初始化GT;(ToolbarWidgetWrapper.java:93)
        在android.support.v7.internal.app.ToolbarActionBar<&初始化GT;(ToolbarActionBar.java:78)
        在android.support.v7.app.AppCompatDelegateImplV7.setSupportActionBar(AppCompatDelegateImplV7.java:204)
        在android.support.v7.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:99)
        在com.example.talha.test_fragement.Category_Blogs.onCreate(Category_Blogs.java:42)
        在android.app.Activity.performCreate(Activity.java:5937)
        在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
        在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)


解决方案

 <?XML版本=1.0编码=UTF-8&GT?;<的RelativeLayout的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
的xmlns:工具=htt​​p://schemas.android.com/tool​​s的android:layout_width =FILL_PARENT
机器人:layout_height =WRAP_CONTENT工具:上下文=com.example.talha.test_fragement.Category_Blogs
的xmlns:广告=htt​​p://schemas.android.com/apk/res-auto>
<包括布局=@布局/ tool_bar机器人:ID =@ + ID /工具栏/>
< RelativeLayout的机器人:layout_width =FILL_PARENT
    机器人:layout_below =@ + ID /工具栏
    机器人:layout_height =FILL_PARENT>
    < ListView的机器人:ID =@机器人:ID /列表的android:layout_width =FILL_PARENT
        机器人:layout_height =FILL_PARENT
        机器人:layout_above =@ + ID / AD浏览机器人:分=#b5b5b5
        机器人:dividerHeight =1DP
        机器人:layout_alignParentBottom =假
        />
    < TextView的机器人:ID =@机器人:ID /空的android:layout_width =match_parent
        机器人:layout_height =match_parent机器人:比重=中心
        机器人:layout_gravity =右|顶/>< / RelativeLayout的>

I'm beginner in Android. I have a title bar which is separately placed in tool_bar.xml . Now i have two fragments. From one fragment i create a new activity which have to include tool_bar.xml (title bar). The problem is when i 'include' tool_bar.xml in newly create activty's xml file. The title bar overlaps with list-view.

I have also tried custom title bar method in On-create method but it didn't work. I think inclusion of tool_bar.xml will be the way but it overlaps with list-view.

Tool_bar.xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:background="@color/ColorPrimary"
android:elevation="2dp"
android:theme="@style/Base.ThemeOverlay.AppCompat.Dark"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_alignParentTop="true"/>

Activty_category_blogs.xml(XML of newly created activty)

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent"
android:layout_height="wrap_content" tools:context="com.example.talha.test_fragement.Category_Blogs"
xmlns:ads="http://schemas.android.com/apk/res-auto">
<include layout="@layout/tool_bar" />
<FrameLayout  android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <ListView android:id="@android:id/list" android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/adView" android:divider="#b5b5b5"
        android:dividerHeight="1dp"
        android:layout_alignParentBottom="true"
        />


    <TextView android:id="@android:id/empty" android:layout_width="match_parent"
        android:layout_height="match_parent" android:gravity="center"
        android:layout_gravity="right|top" />

</FrameLayout>

Edited :

Oncreate Method:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_category__blogs);
    Intent intent = getIntent();
    String message = intent.getStringExtra(Tab2.EXTRA_MESSAGE);
    String link = message + "?feed=titles";
    Log.d("ye category click krne par next activity me ye link bnta hy parsing ke liye",link);
    loadPage(link);
}

Log Cat Error of Null Object Reference :

2339-2339/com.example.talha.test_fragement E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.talha.test_fragement, PID: 2339
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.talha.test_fragement/com.example.talha.test_fragement.Category_Blogs}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.CharSequence android.support.v7.widget.Toolbar.getTitle()' on a null object reference
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
        at android.app.ActivityThread.access$800(ActivityThread.java:144)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5221)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.CharSequence android.support.v7.widget.Toolbar.getTitle()' on a null object reference
        at android.support.v7.internal.widget.ToolbarWidgetWrapper.<init>(ToolbarWidgetWrapper.java:100)
        at android.support.v7.internal.widget.ToolbarWidgetWrapper.<init>(ToolbarWidgetWrapper.java:93)
        at android.support.v7.internal.app.ToolbarActionBar.<init>(ToolbarActionBar.java:78)
        at android.support.v7.app.AppCompatDelegateImplV7.setSupportActionBar(AppCompatDelegateImplV7.java:204)
        at android.support.v7.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:99)
        at com.example.talha.test_fragement.Category_Blogs.onCreate(Category_Blogs.java:42)
        at android.app.Activity.performCreate(Activity.java:5937)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)

          

解决方案

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent"
android:layout_height="wrap_content" tools:context="com.example.talha.test_fragement.Category_Blogs"
xmlns:ads="http://schemas.android.com/apk/res-auto">
<include layout="@layout/tool_bar" android:id="@+id/toolbar" />
<RelativeLayout android:layout_width="fill_parent"
    android:layout_below="@+id/toolbar"
    android:layout_height="fill_parent">
    <ListView android:id="@android:id/list" android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/adView" android:divider="#b5b5b5"
        android:dividerHeight="1dp"
        android:layout_alignParentBottom="false"
        />


    <TextView android:id="@android:id/empty" android:layout_width="match_parent"
        android:layout_height="match_parent" android:gravity="center"
        android:layout_gravity="right|top" />

</RelativeLayout >

这篇关于标题栏与列表视图片断重叠的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆