android自定义titlebar
❶ android titlebar自定义控件显示图片打包问题
未打开之前可以,打包以前就出问题,这说明你的Android项目代码,打包的时候有混淆代码。
解决方案:
直接注释project.properties文州配件中的链迹拿棚搭#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
到proguard-project.txt混淆属性文件中,将titleBar相关的类增加进去,表示打包不混淆。
❷ android title bar制作
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/title_bg"
android:orientation="horizontal"
android:padding="5dp" >
<Button
android:id="@+id/plateBackButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_back" /空和衡棚销>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="@string/inv_title" />
<Button
android:id="@+id/plateNewTalkButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/plate_new_talk" />
</LinearLayout>
把斗做报错的元素改成你自己的就行。
❸ Android 滑动渐变的TitleBar
首先看下效果
进入页面后,是一个列表和顶部是一张图片的布局,滑动列表, TitleBar 随着上下滑动而"若隐若现"。感觉是不是像 CoordinatorLayout 和 CollapsingToolbarLayout 的效果
其实不太一样, CoordinatorLayout 和 CollapsingToolbarLayout 的实现效果更多,并且Gradle需要单独引入Support包
第一个的效果,只要是 ScrollView 、 ListView 、 RecycleView 都可以实现
以ListView为例,首先ListView设置数据,添加Header,然后设置滑动事件
ScrollViewAlphaListener 是自定义的滑动Listener。 setAlphaView 方法分别设置了: 上下文对象 , 顶部图片 , 根布局 ~
看下ScrollViewAlphaListener的主要内容
ScrollViewAlphaListener 是 implements AbsListView.OnScrollListener,所以必须实现其 onScroll 方法。在 onScroll 方法中根据顶部图片的位置高度和根布局滑动Y值,算出Alpha值。当然这里也考虑了 状态栏的高度(ExtendUtils.getStatusBarHeight(mContext))
最后在 ScrollViewAlphaListener 的回调中,处理对应View的渐变效果
这样就实现了滑动渐变的效果TitleBar了~ ScrollView 和 RecycleView 的实现都是根据顶部图片和根布局滑动的Y值来计算的,大同小异~
❹ 如何修改android标题栏界面
方法一、在你的那张Activity中onCreate方法中加上下面代码:
?
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main); //软件activity的布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar); //titlebar为自己标题栏的布局
但是新的问题又来了,这样是无法深层的定制标题栏的,比如原有的高度和背景都没有发生变化,那有没有好的方法呢?答案是有的、
方法二:
因此先定义一个style,若修改背景请修改android:windowTitleBackgroundStyle
若修改标题栏高度,请修改android:windowTitleSize
例子:
?
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="schemas.android.com/apk/res/android">
<style name="CustomWindowTitleBackground">
<item name="android:background">#565656</item>
</style>
<style name="test" parent="android:Theme">
<item name="android:windowTitleSize">50dp</item>
<item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
</style>
</resources>
在程序的android_manifest.xml中对应activity中添加属性android:theme = "@style/test" 就可以了
?
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="schemas.android.com/apk/res/android"
package="com.guardian"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name" >
<activity android:name=".Test"
android:label="@string/app_name"
android:theme = "@style/test" //就在这里
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="4" />
</manifest>
❺ android怎么不显示标题栏
你的活动估计是按照教材上继承的Activity,但你打开你主题的styles.xml,很可能会发现<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
设定中用到了AppCompat的主题解决办法就是让所有的活动都继承 AppCompatActivity就行了,如下:public class 你的活动 extends AppCompatActivity
❻ android 客户端,怎么将一个TitleBar设置到所有页面中!
有的应用是全屏的,所以只能把TitleBar加入到每个会全屏的应用中了
❼ android怎么用基类控制标题栏
[html] view plain
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_titlebar"
android:layout_width="match_parent"
android:layout_height="52dp"
android:background="#ed4255" >
<TextView
android:id="@+id/text_title"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:ellipsize="marquee"
android:gravity="center_horizontal|center"
android:singleLine="true"
android:text="标题栏"
android:textColor="#ffffffff"
android:textSize="20dp" />
<TextView
android:id="@+id/button_backward"
android:layout_width="60dp"
android:layout_height="match_parent"
android:drawableLeft="@drawable/back_arrow"
android:drawablePadding="6dp"
android:ellipsize="end"
android:gravity="center"
android:paddingLeft="5dp"
android:singleLine="true"
android:text="返回"
android:textColor="#ffffffff"
android:textSize="18dp"
android:visibility="invisible" />
<TextView
android:id="@+id/button_forward"
android:layout_width="60dp"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:drawablePadding="6dp"
android:ellipsize="end"
android:gravity="center"
android:paddingLeft="5dp"
android:singleLine="true"
android:text="提交"
android:textColor="#ffffffff"
android:textSize="18dp"
android:visibility="invisible" />
</RelativeLayout>
❽ Android 怎样动态改变Activity的标题
1、改变标题内容:public void setTitle (CharSequence title)
2、隐藏标题:requestWindowFeature(Window.FEATURE_NO_TITLE);
3、隐藏标题和最上面的电池电量及信号栏(全屏):
(请发邮件到[email protected]获得翻强软件。)
java">publicvoidsetFullscreen(){
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
4、自定义标题内容
1)
manifast.xml文件中MainActivity的声明:
<activity
android:name=".activity.MainActivity"
android:screenOrientation="portrait"
android:label="@string/titlebar_text"
</actibity>
2)MainActivity文件中:
1.requestWindowFeature(Window.FEATURE_NO_TITLE);//设置窗口无标题栏
2.setContentView(R.layout.main);
3.//动态设置标题的值,getTitle()的值是该activity的声明中android:label的值
4.((TextView)findViewById(R.id.titlebar_text)).setText(getTitle());
其中,getTitle()取得的值就是上述android:label="@string/titlebar_text"的值
5、自定义标题布局
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
//预先设置允许改变的窗口状态,需在setContentView之前调用,否则设置标题时抛运行时错误。
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.custom_title);
//标题区域可设置为layout,如此可以有丰富的展现方式
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
R.layout.custom_title_1);
}
reslayoutcustom_title_1.xml(比如http://www.tiecou.com/)包含一个TextView 用于显示标题。Android可以把标题做为一个layout来展示,具有很好的扩展性。
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/screen"
android:layout_width="fill_parent"android:layout_height="fill_parent"
android:orientation="vertical">
<TextViewandroid:id="@+id/left_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="@string/custom_title_left"/>
</RelativeLayout>
❾ 如何在Fragment里使用自定义的TitleBar-Android开发问答
根据你的描述肆掘: Fragment没有window所有这个方法不可用,必须在Activity中操作,所以你要FragmentActivity中根据不缓橡同的fragment来切换扰雹旁不同的titlebar
❿ android的MainActivity的自带标题栏中能否加入图片按钮呢,点击触发事件,必须要自定义一个标题栏吗
建议你取消系统TitleBar然后自己定义一个,目前大多数开发都是自己定义TitleBar,可以将TitleBar定义成一个控件,也方便后期的使用方便。而且系统默认的TitleBar是无法完成你需要的操作,除非你引入V7 jar包 Activity继承ActionBarActivity,但这样有点大才小用了,所以不建议使用。