当前位置:  编程技术>移动开发
本页文章导读:
    ▪2013年三月21日-动态添加_删除的Spinner菜单        2013年3月21日----动态添加_删除的Spinner菜单动态添加/删除的Spinner菜单        在Android的Spinner里的元素,如果想动态的增减下拉菜单的选项,就必须利用ArrayList的依赖性来完成。        .........
    ▪ 获取google api 步骤        获取google api 方法android         1. 首先先要获取你的debug keystore位置: 打开Eclipse--->Windows--->Preferences--->Android--->Build 查看默认的debug keystore位置,我的是C:\Documents and Settings\MYNAM.........
    ▪ Xcode WorkSpace的应用与编译       Xcode WorkSpace的使用与编译 环境: xcode 4.5 mac 10.8 1.静态库 1.1 见雨松的 IOS 入门开发之使用Xcode4制作静态库详解(五)。 1.2 静态库使用。 我们在1.1最后生成了.a文件,但是这并不完美。.........

[1]2013年三月21日-动态添加_删除的Spinner菜单
    来源: 互联网  发布时间: 2014-02-18
2013年3月21日----动态添加_删除的Spinner菜单

动态添加/删除的Spinner菜单

       在Android的Spinner里的元素,如果想动态的增减下拉菜单的选项,就必须利用ArrayList的依赖性来完成。

       下面的应用程序设计一个EditText供用户输入文字,单击添加按钮会将文字添加进Spinner;单击“删除”按钮则删除所选择的Spinner选项,常应用于未知Spinner选项数量的To-Do List或添加维护市县数据等。下面是示例的源码:

package com.example.test01;

 

import java.util.ArrayList;

import java.util.List;

 

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

importandroid.view.MotionEvent;

import android.view.View;

import android.view.View.OnClickListener;

importandroid.view.View.OnFocusChangeListener;

importandroid.view.View.OnTouchListener;

importandroid.view.animation.Animation;

importandroid.view.animation.AnimationUtils;

importandroid.widget.AdapterView.OnItemSelectedListener;

importandroid.widget.AdapterView;

importandroid.widget.ArrayAdapter;

importandroid.widget.Button;

importandroid.widget.EditText;

importandroid.widget.Spinner;

importandroid.widget.TextView;

 

public class MainActivityextends Activity {

 

       TextView textView01;

       EditText editText01;

       Button buttonAdd , buttonDelete;

       Spinner spinner01;

       private static final String[] countriesStr = 

              {"北京市" , "上海市" , "天津市" , "重庆市"};

       private ArrayAdapter<String> adapter;

       private ArrayList<String> allCountries;

       Animation animation;

       

       @Override

       protected void onCreate(Bundle savedInstanceState) {

              super.onCreate(savedInstanceState);

              setContentView(R.layout.activity_main);

 

              allCountries = new ArrayList<String>();

              for (int i = 0; i < countriesStr.length; i++) {

                     allCountries.add(countriesStr[i]);

              }

              

              //new ArrayAdapter对象并将allCountries传入

              adapter = newArrayAdapter<String>(getApplicationContext(),android.R.layout.simple_spinner_item , allCountries);

              adapter.setDropDownViewResource(R.layout.myspinner_dropdown);

              

              //以findViewById取得对象

              textView01 = (TextView)findViewById(R.id.textView01);

              editText01 = (EditText)findViewById(R.id.editText);

              buttonAdd = (Button)findViewById(R.id.buttonAdd);

              buttonDelete = (Button)findViewById(R.id.buttonDelete);

              spinner01 = (Spinner)findViewById(R.id.spinner);

              

              //将ArrayAdapter添加Spinner对象中

              spinner01.setAdapter(adapter);

              //将buttonAdd添加OnClickListener

              buttonAdd.setOnClickListener(new OnClickListener() {

                     public voidonClick(View v) {

                            String newCountry =editText01.getText().toString();

                            //先比较添加的值是否已存在,不存在才可以添加

                            for (int i = 0; i <adapter.getCount(); i++) {

                                   if(newCountry.equals(adapter.getItem(i))) {

                                          return;

                                   }

                            }

                            if (!newCountry.equals("")) {

                                   //将值添加到adapter

                                   adapter.add(newCountry);

                                   //取得添加的值的位置

                                   int position =adapter.getPosition(newCountry);

                                   //将Spinner选择在添加的值的位置

                                   spinner01.setSelection(position);

                                   //将EditText清空

                                   editText01.setText("");

                            }

                     }

              });

              

              buttonDelete.setOnClickListener(new OnClickListener() {

                     public void onClick(View v) {

                            if (spinner01.getSelectedItem() != null){

                                   //删除spinner的值

                                   adapter.remove(spinner01.getSelectedItem().toString());

                                   //将EditText清空

                                   editText01.setText("");

                                   if (adapter.getCount() == 0) {

                                          //将TextView清空

                                          textView01.setText("");

                                   }

                            }

                     }

              });

              

              //将spinner添加OnItemSelectedListener

              spinner01.setOnItemSelectedListener(newSpinnerSelectListener());

              

       }

       

       class SpinnerSelectListener implements OnItemSelectedListener

       {

              public void onItemSelected(AdapterView<?> arg0,View arg1, int arg2,

                            long arg3) {

                     //将所选spinner的值带入TextView中

                     textView01.setText(arg0.getSelectedItem().toString());

                     

              }

 

              public void onNothingSelected(AdapterView<?>arg0) {}

       }

       

       

       @Override

       public boolean onCreateOptionsMenu(Menu menu) {

              // Inflate the menu; this adds items to the action barif it is present.

              getMenuInflater().inflate(R.menu.main, menu);

              return true;

       }

}

 


 


    
[2] 获取google api 步骤
    来源: 互联网  发布时间: 2014-02-18
获取google api 方法
android
        1. 首先先要获取你的debug keystore位置:

打开Eclipse--->Windows--->Preferences--->Android--->Build
查看默认的debug keystore位置,我的是C:\Documents and Settings\MYNAME \.android\debug.keystore

2. 在cmd中执行:

keytool -list -keystore ~/.android/debug.keystore
或者是:
keytool -list -alias androiddebugkey -keystore "路径\debug.keystore " -storepass android -keypass android
双引号中的为你keystore位置, 注意,你的双引号一定要有,否则就会报错:keytool error: java.lang.RuntimeException: Usage error, and is not a legal command

执行结果:
androiddebugkey, May 4, 2009, PrivateKeyEntry,

Certificate fingerprint (MD5): XX:XX:XX:XX:XX:XX:XX:XX.............
这里的XX:XX:XX:XX:XX:XX:XX:XX.............就是你的认证指纹

3 中间步骤,要去google网站注册自己的用户,到自己的邮箱里先去激活,

4 激活后,打开http://code.google.com/intl/zh-CN/android/maps-api-signup.html
填入你的认证指纹(MD5)即可获得apiKey了,结果显示如下:

感谢您注册 Android 地图 API 密钥!
您的密钥是:

       XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 使用得到的apiKey:

在layout中加入MapView
<com.google.android.maps.MapView
      android:id="@+id/mapview"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
        android:apiKey="XXXXXXXXXXXXXXXXXXXXXXXXXXXX" /> 

    
[3] Xcode WorkSpace的应用与编译
    来源: 互联网  发布时间: 2014-02-18
Xcode WorkSpace的使用与编译
环境: xcode 4.5 mac 10.8

1.静态库

1.1 见雨松的 IOS 入门开发之使用Xcode4制作静态库详解(五)。

1.2 静态库使用。
我们在1.1最后生成了.a文件,但是这并不完美。

1.2.1
我们选中静态库

1.2.2
在build时,静态库有多种configuration,我们一般调试都使用simulator,如果你使用simulator编译的.a文件在工程中是红色,你也选择Device编译,重新在工程中导入(Xcode bug!!!).


1.3 静态库配置
如果我们想要在workspace中动态编译静态库和工程,我们需要对两者进行配置。
静态库中,
我们在静态库->targets->build setting->install directory,键入:$(BUILT_PRODUCTS_DIR),我们这里指定静态库生成的.公共文件路径。
我们在静态库->targets->build setting->other linker flags 键入:-Objc,这里我们可以让工程导入所有的静态库公共文件(包括类别category),详见解决ios静态库中的类别(category)在工程中不能使用

1.4 设置公共文件夹
我们在静态库->targets->build phases->copy files,点击“+”,添加公共的.h头文件(如果你想这个文件在工程中被使用),注:各个xcode版本不同,添加公共文件的方法不同.

2.我们的工程

2.1 工程中导人.a文件见1.1

2.2 我们在工程中->targets->build setting-> user header search paths,键入,$(BUILT_PRODUCTS_DIR),我们的工程可以在此目录,即静态生成的公共文件目录查找文件。
同样,我们在工程中->targets->build setting->other linker flags 键入:-Objc,这里和1.3类似。

3 命令行编译workspace,测试打包
3.1 在1.2.2时,我们要选择静态库,导航栏,product->edit scheme,如下图所示:



选择info->build configuration->release,这里我们选择发布编译。这样我们在命令行编译时,可以在指定路径找到release的.a文件。



3.2 在终端中找到.xcworkspace的路径,执行下列命令 xcodebuild -workspace xxx.xcworkspace -scheme yyy -configuration  Release

3.3 在$(BUILT_PRODUCTS_DIR)目录下release-iphoneos文件下找到.app。
注:可在,xcode-preferences->locations中指定$(BUILT_PRODUCTS_DIR)的位置。
详见:xcode4的环境变量,Build Settings参数,workspace及联编设置
图3-1
 
图3-2

图3-3



参考文章:
http://erlangprogram.com/use-xcode4-workspace
https://coderwall.com/p/rv2lgw
http://blog.carbonfive.com/2011/04/04/using-open-source-static-libraries-in-xcode-4/
http://www.cnblogs.com/xiaodao/archive/2012/03/28/2422091.html

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3