当前位置: 移动技术网 > IT编程>移动开发>Android > Android实现QQ新用户注册界面遇到问题及解决方法

Android实现QQ新用户注册界面遇到问题及解决方法

2019年07月24日  | 移动技术网IT编程  | 我要评论

替嫁暴王的宠妃,上海方馨幼儿园,汗蒸房品牌

在上篇文章给大家介绍了android实现qq登录界面遇到问题及解决方法,本篇文章继续给大家介绍有关android qq界面知识。

先给大家展示下效果图:

问题:

1、下拉列表(因为还没看到这里...)

2、标题栏显示问题

3、按钮的 enable 设置  

以下是代码:

布局 fragment_main(问题1)

<relativelayout 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:focusable="true"
 android:focusableintouchmode="true"
 android:background="#f7f7f9"
 tools:context="com.dragon.android.qqregist.mainactivity$placeholderfragment" >
 <button
  android:id="@+id/button2"
  android:layout_width="wrap_content"
  android:layout_height="50dp"
  android:layout_alignparenttop="true"
  android:background="#ffffff"
  android:drawableleft="@drawable/aa"
  android:text="@string/button2"
  android:textcolor="#1cbaf5" />
 <textview
  android:id="@+id/textview2"
  android:layout_width="match_parent"
  android:layout_height="50dp"
  android:layout_alignbaseline="@+id/button2"
  android:layout_alignbottom="@+id/button2"
  android:background="#ffffff"
  android:gravity="center"
  android:text="@string/pagename"
  android:textcolor="#1cbaf5" />
 <linearlayout
  android:id="@+id/linear"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:orientation="horizontal"
  android:layout_below="@id/button2"
  android:paddingtop="30dp"
  android:paddingbottom="20dp" >
 <spinner
  android:id="@+id/spinner1"
  android:layout_width="0dp"
  android:layout_height="wrap_content"
  android:background="@drawable/bg_spinner"
  android:layout_weight="1" 
  android:entries="@array/country"/>
 <edittext 
  android:id="@+id/edittext1"
  android:layout_width="0dp"
  android:layout_height="wrap_content"
  android:layout_weight="2" 
  android:background="@drawable/bg_edittext"
  android:ems="10"
  android:inputtype="phone"
  android:hint="@string/innum"
  android:color="#000000"
  android:textsize="15sp" >
 </edittext>
 </linearlayout>
 <button
  android:id="@+id/button1"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:layout_marginleft="10dp"
  android:layout_marginright="10dp"
  android:layout_below="@id/linear"
  android:enabled="false"
  android:background="@drawable/bg_button"
  android:text="@string/button"
  android:gravity="center"
  android:textcolor="#ffffff" />
 <checkbox
  android:id="@+id/checkbox1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_margintop="10dp"
  android:layout_marginleft="10dp"
  android:layout_below="@id/button1"
  android:text="@string/sure"
  android:textsize="12sp"
  android:textcolor="#a6a6a7" />
 <textview
  android:id="@+id/textview1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignbaseline="@+id/checkbox1"
  android:layout_alignbottom="@+id/checkbox1"
  android:layout_marginleft="10dp"
  android:layout_torightof="@+id/checkbox1"
  android:autolink="all"
  android:text="@string/protocol"
  android:textsize="12sp" />
</relativelayout>
fragment_main

edittext、spinner 以及 button 修改前后的背景

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
 <stroke android:width="1px" android:color="#bebebe"/>
 <solid android:color="#ffffff" />
 <padding 
  android:left="10dp"
  android:top="10dp"
  android:bottom="10dp"/>
</shape>
bg_edittext
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
 <stroke android:width="1px" android:color="#bebebe"/>
 <solid android:color="#ffffff" />
 <padding 
  android:left="10dp"
  android:top="10dp"
  android:bottom="10dp"/>
</shape>
bg_spinner
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
 <solid android:color="#808080"/>
 <corners android:radius="10dp"/>
 <padding 
  android:top="10dp" 
  android:bottom="10dp"/>
</shape>
bg_button
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
 <solid android:color="#1cbaf5"/>
 <corners android:radius="10dp"/>
 <padding 
  android:top="10dp" 
  android:bottom="10dp"/>
</shape>
bg_buttin_change

spinner 的下拉数据 arrays

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <string-array name="country">
  <item >中国  +86</item>
  <item >香港  +852</item>
  <item >澳门  +853</item>
  <item >台湾  +886</item>
  <item >日本  +81</item>
  <item >美国  +1</item>
  <item >英国  +44</item>
 </string-array>
</resources>
arrays

标题栏的背景(问题2 -- 放弃)

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
 <style name="bg_title" parent="android:theme">
  <item name="android:windowtitlebackgroundstyle">@style/titleground</item>
  <item name="android:windowtitlestyle">@style/windowtitlestyle</item>
  <item name="android:windowtitlesize">40dp</item>  
 </style>
 <style name="titleground"> 
  <item name="android:background">#ffffff</item> 
 </style>
 <style name="windowtitlestyle">
  <item name="android:text">@string/pagename</item>
  <item name="android:textcolor">#1cbaf5</item> 
  <item name="android:paddingtop">2dp</item>
  <item name="android:paddingbottom">2dp</item>
  <item name="android:textsize">20sp</item>
  </style>
</resources>
bg_titile

问题2替换方法:隐藏标题栏 -- 在 androidmanifest 中添加 -- android:theme="@android:style/theme.notitlebar" >

mainactivity (问题3)

package com.dragon.android.qqregist;
import android.annotation.suppresslint;
import android.app.activity;
import android.graphics.color;
import android.os.bundle;
import android.view.view;
import android.widget.adapterview;
import android.widget.adapterview.onitemselectedlistener;
import android.widget.button;
import android.widget.checkbox;
import android.widget.compoundbutton;
import android.widget.compoundbutton.oncheckedchangelistener;
import android.widget.edittext;
import android.widget.spinner;
import android.widget.toast;
public class mainactivity extends activity {
private spinner spinner = null;
private edittext edittext1;
private button button2;
private button button1;
private checkbox checkbox1;
@override
protected void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.fragment_main);
spinner = (spinner) findviewbyid(r.id.spinner1);
spinner.setselection(0);
edittext1 = (edittext) findviewbyid(r.id.edittext1);
edittext1.sethinttextcolor(color.gray);
button2 = (button) findviewbyid(r.id.button2);
// 设置空间置顶
button2.bringtofront();
button1 = (button) findviewbyid(r.id.button1);
// spinner 选择监听事件
spinner.setonitemselectedlistener(new onitemselectedlistener() {
@override
// parent当前spinner pos/id选中的值所在位置/行
public void onitemselected(adapterview<?> parent, view view,
int pos, long id) {
// 得到string-array
string[] country = getresources().getstringarray(
r.array.country);
toast.maketext(mainactivity.this, "你选择的是:" + country[pos],
toast.length_short).show();
}
@override
public void onnothingselected(adapterview<?> parent) {
// another interface callback
}
});
checkbox1 = (checkbox) findviewbyid(r.id.checkbox1);
checkbox1.setoncheckedchangelistener(new oncheckedchangelistener() {
@override
@suppresslint("newapi")
public void oncheckedchanged(compoundbutton view, boolean inchecked) {
button1.setenabled(inchecked);
if (!inchecked) {
// 设置按钮的背景
button1.setbackground(getresources().getdrawable(
r.drawable.bg_button));
} else {
button1.setbackground(getresources().getdrawable(
r.drawable.bg_button_change));
}
}
});
}
}

以上所述是小编给大家介绍的android实现qq新用户注册界面遇到问题及解决方法,希望对大家有所帮助

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网