barriers / 阅读 / 详情

如何通过反射使用BluetoothHeadset类

2023-07-17 11:51:35
共1条回复
西柚不是西游

Usb

setting 中tethering 设置流程

一 资源位置及入口文件

USB

tethering, usb_tethering_button_text

Xml/tether_prefs.xml------usb_tether_settings,布局文件

packages/apps/Settings/AndroidManifest.xml

<!-- Keep compatibility with old

shortcuts. -->

<activity-alias

android:name=".TetherSettings"

android:label="@string/tether_settings_title_all"

android:clearTaskOnLaunch="true"

android:exported="true"

android:targetActivity="Settings$TetherSettingsActivity">

<meta-data

android:name="com.android.settings.FRAGMENT_CLASS"

android:value="com.android.settings.TetherSettings"

/>

<meta-data

android:name="com.android.settings.TOP_LEVEL_HEADER_ID"

android:resource="@id/wireless_settings"

/>

<meta-data

android:name="com.android.settings.PARENT_FRAGMENT_TITLE"

android:resource="@string/wireless_networks_settings_title"

/>

<meta-data

android:name="com.android.settings.PARENT_FRAGMENT_CLASS"

android:value="com.android.settings.Settings$WirelessSettingsActivity"

/>

</activity-alias>

TetherSettings.java

二 触发流程

2.1

TetherSettings.java

packages/apps/Settings/src/com/android/settings/TetherSettings.java

onPreferenceTreeClick

SXlog.d(TAG,

"onPreferenceTreeClick - setusbTethering(" + newState + ")

mUsbTethering: " + mUsbTethering);

setUsbTethering(true);

下面是设置时抓取的log日志

D/TetherSettings( 543): onPreferenceTreeClick -

setusbTethering(true) mUsbTethering: true

D/Tethering(

271): setUsbTethering(true)

D/UsbDeviceManager( 271):

setCurrentFunction(rndis) default: false

W/UsbDeviceManager( 271): handleMessage:

2

W/UsbDeviceManager( 271): setEnabledFunctions:

functions = rndis

W/UsbDeviceManager( 271): setEnabledFunctions,

mDefaultFunctions: mtp,adb

W/UsbDeviceManager( 271): setEnabledFunctions,

mCurrentFunctions: mtp,adb

D/UsbDeviceManager( 271): setEnabledFunctions,

mSettingFunction: mtp,adb

W/UsbDeviceManager( 271): containsFunction,

functions: rndis

W/UsbDeviceManager( 271): containsFunction,

function: adb

W/UsbDeviceManager( 271): containsFunction

index: -1

W/UsbDeviceManager( 271): addFunction,

functions: rndis

W/UsbDeviceManager( 271): addFunction, function:

adb

W/UsbDeviceManager( 271): containsFunction,

functions: rndis

W/UsbDeviceManager( 271): containsFunction,

function: acm

W/UsbDeviceManager( 271): containsFunction

index: -1

W/UsbDeviceManager( 271): containsFunction,

functions: rndis,adb

W/UsbDeviceManager( 271): containsFunction,

function: acm

W/UsbDeviceManager( 271): containsFunction

index: -1

D/UsbDeviceManager( 271):

setUsbConfig(none)

W/UsbDeviceManager( 271): setUsbConfig, config:

none

public

boolean onPreferenceTreeClick(PreferenceScreen

screen, Preference preference) {

ConnectivityManager cm =

(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

if

(preference == mUsbTether) {

if

(!mUsbTethering) {

boolean

newState = mUsbTether.isChecked();

mUsbTethering = true;

mUsbTetherCheckEnable = false;

mUsbTether.setEnabled(false);

SXlog.d(TAG,

"onPreferenceTreeClick - setusbTethering(" + newState + ")

mUsbTethering: " + mUsbTethering);

if

(newState) {

startProvisioningIfNecessary(USB_TETHERING);

} else

{

setUsbTethering(newState);

}

} else

{

return

true;

}

} else if

(preference == mBluetoothTether) {

private void

setUsbTethering(boolean

enabled) {

ConnectivityManager cm =

(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

if

(cm.setUsbTethering(enabled) !=

ConnectivityManager.TETHER_ERROR_NO_ERROR) {

mUsbTether.setChecked(false);

mUsbTether.setSummary(R.string.usb_tethering_errored_subtext);

return;

}

mUsbTether.setSummary("");

}

2.2

ConnectivityManager.java

frameworks/base/core/java/android/net/ConnectivityManager.java

private

final IConnectivityManager

mService;

public int

setUsbTethering(boolean

enable) {

try

{

return

mService.setUsbTethering(enable);

} catch

(RemoteException e) {

return

TETHER_ERROR_SERVICE_UNAVAIL;

}

}

manager 和service有一个对应关系,固定的规则。 manager是为了sdk诞生的,方便app开发者调用。其实可以直接调用service,如mountservice是没有mountmanager的。

service是在系统起来是就被android系统启动的,而manager是后期有需要时实例化起来的。

Service的目录在:/frameworks/base/services/java/com/android/server/

manager的目录在:frameworks/base/core/java/android

2.3

ConnectivityService.java

frameworks/base/services/java/com/android/server

private

Tethering mTethering;

public int

setUsbTethering(boolean

enable) {

enforceTetherAccessPermission();

if

(isTetheringSupported()) {

return

mTethering.setUsbTethering(enable);

} else

{

return

ConnectivityManager.TETHER_ERROR_UNSUPPORTED;

}

}

2.4

Tethering.java

frameworks/base/services/java/com/android/server/connectivity/Tethering.java

public int

setUsbTethering(boolean

enable) {

UsbManager usbManager = (UsbManager)mContext.getSystemService(Context.USB_SERVICE);

………………

else

{

mUsbTetherRequested = true;

usbManager.setCurrentFunction(UsbManager.USB_FUNCTION_RNDIS,

false);

}

通过service,来获取manager,进行操作。这个tethering.java的构造函数

public

Tethering(Context context,

INetworkManagementService nmService,

INetworkStatsService statsService,

IConnectivityManager connService, Looper looper)

{

Context是获取全局信息的接口,

2.5 UsbManager.java

/frameworks/base/core/java/android/hardware/usb/UsbManager.java

public void setCurrentFunction(String

function, boolean makeDefault) {

try {

mService.setCurrentFunction(function,

makeDefault);

}

catch (RemoteException e) {

Log.e(TAG, "RemoteException in

setCurrentFunction", e);

}

}

2.6

frameworks/base/services/java/com/android/server/usb$

mengfd1@tablet-C:~/work/A2107/frameworks/base/services/java/com/android/server$

cd usb

mengfd1@tablet-C:~/work/A2107/frameworks/base/services/java/com/android/server/usb$

ls

UsbDeviceManager.java UsbHostManager.java

UsbService.java UsbSettingsManager.java

/frameworks/base/services/java/com/android/server/usb/UsbService.java

public void setCurrentFunction(String function, boolean

makeDefault) {

mContext.enforceCallingOrSelfPermission(android.Manifest.permission.MANAGE_USB,

null);

if

(mDeviceManager != null) {

mDeviceManager.setCurrentFunction(function,

makeDefault);

}

else {

throw new IllegalStateException("USB device

mode not supported");

}

}

/frameworks/base/services/java/com/android/server/usb/UsbDeviceManager.java

public void setCurrentFunction(String

function, boolean makeDefault) {

if

(DEBUG) Slog.d(TAG, "setCurrentFunction(" + function + ") default:

" + makeDefault);

mHandler.sendMessage(MSG_SET_CURRENT_FUNCTION,

function, makeDefault);

}

public void handleMessage(Message msg)

{

case

MSG_SET_CURRENT_FUNCTION:

String function =

(String)msg.obj;

boolean makeDefault = (msg.arg1 ==

1);

if (function != null

&&

function.equals(UsbManager.USB_FUNCTION_CHARGING_ONLY))

{

mSettingUsbCharging = true;

SXlog.d(TAG, "handleMessage -

MSG_SET_CURRENT_FUNCTION - USB_FUNCTION_CHARGING_ONLY -

makeDefault: " + makeDefault);

} else {

mSettingUsbCharging = false;

}

setEnabledFunctions(function,

makeDefault);

SXlog.d(TAG, "handleMessage -

MSG_SET_CURRENT_FUNCTION - function: " +

function);

break;

private void setEnabledFunctions(String

functions, boolean makeDefault) {

private boolean setUsbConfig(String config) {

SystemProperties.set("sys.usb.config",

config);

相关推荐

PreferenceFragment去完成设置页面

大多数时候我们都是这样去使用SharedPreferences 在app设置页面的开发中也会用到对设置项的保存,我们也会用到SharedPreferences去保存这些设置项,Android官方提供了更为简单针对设置页面使用SharedPreferences方法,那就是PreferenceActivity和PreferenceFragment. 下面来说下如何使用. PreferenceActivity主要针对3.0以前的版本,PreferenceFragment则更为灵活,其实使用方法上面两者大致一样,所以PreferenceActivity就不展开讲解,直接来看PreferenceFragment的使用 一般来说Fragment会要求去关联一个布局的layout, 但是在PreferenceFragment则不需要这样做,我们需要去自定义一个xml加入首选项(首选项就是配置项,官方称为首选项). xml根节点必须是一个PreferenceScreen元素. PreferenceScreen里面的子项都作为一个独立的控件显示在界面里,同时还具备保存属性. 显示效果如下 以上只展示了CheckBoxPreference和ListPreference,还有其它很多Preference控件,具体可以查阅官方文档有关Preference的字类. 如果设置项目过多,我们可以进行分类展示,有如下两种方式可以来实现. 加入PreferenceCategory的属性可以进行标题的划分. 使用PreferenceCategory属性可以划分子屏幕 有时候我们的设置项目并不是保存一个配置项,而是去跳转到一个新的画面. 我们可以使用如下配置来使得首选项跳转一个网页 当然你也可以配置显式的intent进行跳转,具体可以参见官方文档. 可以设置默认值给Preference控件 在进入设置页面可以调用 对默认值进行初始化应用, 这个接口最常用的地方就是去恢复设置. 通常还有种需求是点击一个首选项跳转到另外一个屏幕,当然这个功能也可以通过PreferenceScreen来完成,但是使用PreferenceScreen不能兼容平板的情况就像下面这样 如果要实现这种效果就要使用到hearders android:fragment用来标记点击后跳转的Fragment,extra用来传递参数,可以在Fragment中通过getArguments()来获取传递过来的bundle数据, 这个数据最大的作用就是用来在同一个preference fragment中加载不同的preference xml. 如果要显示这个标头文件的内容需要去重写onBuildHeaders方法. preference-headers这个标签只能支持3.0以后的版本,如果要兼容3.0以前的版本需要另外在写个xml作为兼容 再以如下方式加载 onBuildHeaders这个回调只会在Build.VERSION_CODES.HONEYCOMB(3.0系统)以上的版本调用。 另外我们必须要注意的一点,目前首选项不会再您调用registerOnSharedPreferenceChangeListener()时存储对监听器的强引用。但是,您必须存储对监听器的强引用,否则它将很容易被当作垃圾回收。 上面就是关于如何使用系统提供具有Preference功能的UI控件来打造一个设置界面. 更多详细关于自定义Preference等可以参考官方文档 https://developer.android.com/guide/topics/ui/settings
2023-07-17 11:31:231

怎么样得到引用的类属于那一个JAR包中的

一般根据引用的包名去查找 。。。。。。。。。。。。
2023-07-17 11:31:311

Android蓝牙协议-蓝牙配对与连接

蓝牙设备在连接前,会先检查设备是否已经配对过,如果没有则先配对,配对完成后,再开始连接。 蓝牙连接开始于设备列表 DeviceListPreferenceFragment的onPreferenceTreeClick方法。 DeviceListPreferenceFragment是蓝牙设备列表,点击其中一个蓝牙设备,开始蓝牙的连接过程。 调用onDevicePreferenceClick方法,接着调用BluetoothDevicePreference的onClicked方法,开始连接,以及连接前的状态检测。 获取mCachedDevice的绑定状态, pair方法会调用CachedBluetoothDevice.startPairing,启动配对 createBond调用BluetoothDevice.createBond方法,BluetoothDevice.createBond接着调用IBluetooth.createBond方法,下面会调用蓝牙远程服务。 和蓝牙扫描一样,实现IBluetooth接口的类是AdapterServiceBinder, AdapterServiceBinder实现IBluetooth.Stub接口,并且是AdapterService的私有内部类, AdapterServiceBinder接受事件,都会转交AdapterService处理 ,所以IBluetooth.createBond方法会调用AdapterService.createBond方法。 createBond方法会检查一下远程设备属性信息,再次取消蓝牙扫描任务,将配对任务转交mBondStateMachine,由状态机处理该信息。 BondStateMachine状态机的初始状态是StableState,所以BondStateMachine.CREATE_BOND由StableState处理,StableState在processMessage中调用BondStateMachine.createBond方法 createBondNative方法实现com_android_bluetooth_btservice_AdapterService.cpp中
2023-07-17 11:32:081

如何在Fragment中使用PreferenceFragment

public FragmentSetup() { // Required empty public constructor}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_setup, container, false);}@Overridepublic void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); // Load the preferences from an XML resource
2023-07-17 11:32:201

如何查阅这个东西:preferencefragment。我不要解释,我只要怎么能查出来,它是android3.0后加上的。

方法一:将这个源码jar文件导入到eclipse项目,ctrl+鼠标点击,就能看到这个类的说明了。另一种方法是打开3.0以上的Android API文档选择Reference---往下拉找到android.preference
2023-07-17 11:32:281

android PreferenceFragment 切换语言crash

切换语言时fragment初始化失败,之前遇到过这个BUG。应该是fragment内容已经被释放,但是activity里面的fragment对象还存在。所以你再初始化的时候要判断一下Fragment的内容是否正常。isDetached()这个函数 好像。。记不太清了
2023-07-17 11:32:351

如何在fragment中使用preferencefragment

public FragmentSetup() { // Required empty public constructor}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_setup, container, false);}@Overridepublic void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); // Load the preferences from an XML resource}
2023-07-17 11:32:421

怎样实现从一个frgment跳转到另一个preferencefragment

不行的,fragment是基于activity的,我用了后的理解是,它就像是相当于activity布局中的一个View,一个activity可以有多个View(fragment)。你要实现用intent的跳转,必须是要通过activity跳activity的,new Intent的时候,里面两个参数很明确的,一个是第一个参数是Context,fragemnt显然不行。
2023-07-17 11:32:491

在fragment怎么用getlayoutinflater

用了一个FragmentActivity作为主界面,包含了三个Fragment,实现了一个滑动的效果。现在我想讲其中一个Fragment,作为一个设置的界面,所以我想使用PreferenceFragment来实现。如下代码:一、FragmentActivity代码:Java code?package huahua.viewpager;import java.util.ArrayList;import android.os.Bundle;import android.preference.PreferenceFragment;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.app.FragmentTransaction;import android.support.v4.view.PagerTabStrip;import android.support.v4.view.PagerTitleStrip;import android.support.v4.view.ViewPager;import android.util.Log;public class MainActivity extends FragmentActivity { private ViewPager m_vp; private fragment1 mfragment1; private fragment2 mfragment2; private fragment3 mfragment3; private ArrayList<Fragment> fragmentList;//页面列表 ArrayList<String> titleList = new ArrayList<String>();//标题列表 //通过pagerTabStrip可以设置标题的属性 private PagerTabStrip pagerTabStrip; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.v("huahua", "MainActivity-->onCreate()"); m_vp = (ViewPager)findViewById(R.id.viewpager); pagerTabStrip=(PagerTabStrip) findViewById(R.id.pagertab); mfragment1 = new fragment1(); mfragment2 = new fragment2(); mfragment3 = new fragment3(); fragmentList = new ArrayList<Fragment>(); fragmentList.add(mfragment1); fragmentList.add(mfragment2); fragmentList.add(mfragment3); titleList.add("第一页 "); titleList.add("第二页"); titleList.add("第三页 "); m_vp.setOffscreenPageLimit(0); m_vp.setAdapter(new MyViewPagerAdapter(getSupportFragmentManager())); //设置下划线的颜色 pagerTabStrip.setTabIndicatorColor(getResources().getColor(android.R.color.holo_green_dark)); //设置背景的颜色 pagerTabStrip.setBackgroundColor(getResources().getColor(android.R.color.holo_blue_dark)); } public class MyViewPagerAdapter extends FragmentPagerAdapter{ public MyViewPagerAdapter(FragmentManager fm) { super(fm); // TODO Auto-generated constructor stub } @Override public Fragment getItem(int arg0) { return fragmentList.get(arg0); } @Override public int getCount() { return fragmentList.size(); } @Override public CharSequence getPageTitle(int position) { // TODO Auto-generated method stub return titleList.get(position); } }}这个是其中的一个Fragment,我想在这个Fragment页面上实现PreferenceFragment的效果,但是这样做行不通,Java code?1getActivity().getFragmentManager().beginTransaction().replace(android.R.id.content, new PrefsFragement()).commit();这行代码以及下面的PrefsFragement静态类都是我期望实现的。真的不知道如何解决了。求教各位,万分感激。这个Fragment和PreferenceFragment并不是继承关系,这里的Fragment使用的是android.support.v4.app.Fragment下面的Fragment。Java code?package huahua.viewpager;import android.os.Bundle;import android.preference.PreferenceFragment;import android.support.v4.app.Fragment;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class fragment3 extends Fragment{ private View mMainView; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.v("huahua", "fragment3-->onCreate()"); LayoutInflater inflater = getActivity().getLayoutInflater(); mMainView = inflater.inflate(R.layout.fragment3, (ViewGroup)getActivity().findViewById(R.id.viewpager), false); getActivity().getFragmentManager().beginTransaction().replace(android.R.id.content, new PrefsFragement()).commit();//希望添加的 } public static class PrefsFragement extends PreferenceFragment{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Log.v("huahua", "fragment3-->onCreateView()"); ViewGroup p = (ViewGroup) mMainView.getParent(); if (p != null) { p.removeAllViewsInLayout(); Log.v("huahua", "fragment3-->移除已存在的View"); } return mMainView; }}
2023-07-17 11:32:571

android preferencescreen走哪个intent

  addPreferencesFromResource(R.xml.setting_preference);   因为最近的项目我都要把程序的资源文件都放到另一个apk中。而上面这个方法中只能传本地的或系统的资源id。那么我就找到了类似的方法:addPreferencesFromIntent(Intent intent);百度goolge了一下发现都是没有这个方法的例子只有搜索google的里面的api:   public void addPreferencesFromIntent (Intent intent)   Since: API Level 1   This method is deprecated. This function is not relevant for a modern fragment-based PreferenceActivity.   Adds preferences from activities that match the given Intent.   Parameters   intent   The Intent to query activities.   这样介绍就很简单了,只是让我们去查询activities。没有说明xml是什么给的。没办法我只能去看源码,看他们是什么解析Intent的,那我就给出一个可用的intent。   因为是继承PreferenceFragment的,我就从源码找到frameworks/base/core/java/android/preference/PreferenceFragment.java这个类:   view plaincopy to clipboardprint?   <span style="white-space:pre"> </span>public void addPreferencesFromIntent(Intent intent) { requirePreferenceManager(); setPreferenceScreen(mPreferenceManager.inflateFromIntent(intent, getPreferenceScreen())); }   <span style="white-space:pre"> </span>public void addPreferencesFromIntent(Intent intent) { requirePreferenceManager(); setPreferenceScreen(mPreferenceManager.inflateFromIntent(intent, getPreferenceScreen())); } 然后这里又用到了mPreferenceManager.inflateFromIntentt(intent, getPreferenceScreen()),那么在找到这个类frameworks/base/core/java/android/preference/PreferenceManager.java:   view plaincopy to clipboardprint?   <span style="white-space:pre"> </span>PreferenceScreen inflateFromIntent(Intent queryIntent, PreferenceScreen rootPreferences) { final List<ResolveInfo> activities = queryIntentActivities(queryIntent); final HashSet<String> inflatedRes = new HashSet<String>(); for (int i = activities.size() - 1; i >= 0; i--) { final ActivityInfo activityInfo = activities.get(i).activityInfo; final Bundle metaData = activityInfo.metaData; if ((metaData == null) !metaData.containsKey(METADATA_KEY_PREFERENCES)) { continue; } // Need to concat the package with res ID since the same res ID // can be re-used across contexts final String uniqueResId = activityInfo.packageName + ":" + activityInfo.metaData.getInt(METADATA_KEY_PREFERENCES); if (!inflatedRes.contains(uniqueResId)) { inflatedRes.add(uniqueResId); final Context context; try { context = mContext.createPackageContext(activityInfo.packageName, 0); } catch (NameNotFoundException e) { Log.w(TAG, "Could not create context for " + activityInfo.packageName + ": " + Log.getStackTraceString(e)); continue; } final PreferenceInflater inflater = new PreferenceInflater(context, this); final XmlResourceParser parser = activityInfo.loadXmlMetaData(context .getPackageManager(), METADATA_KEY_PREFERENCES); rootPreferences = (PreferenceScreen) inflater .inflate(parser, rootPreferences, true); parser.close(); } } rootPreferences.onAttachedToHierarchy(this); return rootPreferences; }   <span style="white-space:pre"> </span>PreferenceScreen inflateFromIntent(Intent queryIntent, PreferenceScreen rootPreferences) { final List<ResolveInfo> activities = queryIntentActivities(queryIntent); final HashSet<String> inflatedRes = new HashSet<String>(); for (int i = activities.size() - 1; i >= 0; i--) { final ActivityInfo activityInfo = activities.get(i).activityInfo; final Bundle metaData = activityInfo.metaData; if ((metaData == null) !metaData.containsKey(METADATA_KEY_PREFERENCES)) { continue; } // Need to concat the package with res ID since the same res ID // can be re-used across contexts final String uniqueResId = activityInfo.packageName + ":" + activityInfo.metaData.getInt(METADATA_KEY_PREFERENCES); if (!inflatedRes.contains(uniqueResId)) { inflatedRes.add(uniqueResId); final Context context; try { context = mContext.createPackageContext(activityInfo.packageName, 0); } catch (NameNotFoundException e) { Log.w(TAG, "Could not create context for " + activityInfo.packageName + ": " + Log.getStackTraceString(e)); continue; } final PreferenceInflater inflater = new PreferenceInflater(context, this); final XmlResourceParser parser = activityInfo.loadXmlMetaData(context .getPackageManager(), METADATA_KEY_PREFERENCES); rootPreferences = (PreferenceScreen) inflater .inflate(parser, rootPreferences, true); parser.close(); } } rootPreferences.onAttachedToHierarchy(this); return rootPreferences; } 从上面的代码我们就知道要从intent中获取一组activity。通过 activityInfo.metaData.getInt(METADATA_KEY_PREFERENCES)我们知道就是从activity拿的<meta-data 这些数据,那么我们在AndroidManifest.xml中eclipse提示的<meta-data只有三个属性:   那么我么就不难得出结论<meta-data 中的nane就是METADATA_KEY_PREFERENCES,而xml就是resource。   接下来还有一个问题就是METADATA_KEY_PREFERENCES的值是多少。搜一下在PreferenceManager.java中有如下定义:   view plaincopy to clipboardprint?   public static final String METADATA_KEY_PREFERENCES = "android.preference";   public static final String METADATA_KEY_PREFERENCES = "android.preference"; 知道了以上原理我们来验证一下:   新建一个工程,在里面的activity标签中加<meta-data,如下:   view plaincopy to clipboardprint?   <span style="white-space:pre"> </span><activity android:name="com.winca.style.defaultskin.RadioReadSettingXMLActivity" android:icon="@drawable/radio" android:label="@string/radio_app_name" > <meta-data android:name="android.preference" android:resource="@xml/setting_preference"/> </activity>   <span style="white-space:pre"> </span><activity android:name="com.winca.style.defaultskin.RadioReadSettingXMLActivity" android:icon="@drawable/radio" android:label="@string/radio_app_name" > <meta-data android:name="android.preference" android:resource="@xml/setting_preference"/> </activity> 这个xml就是从我们程序中拷贝多来放到新建的工程中的。   原来我们工程用的addPreferencesFromResource(R.xml.setting_preference);这语句,我们这样替换:   view plaincopy to clipboardprint?   <pre name="code" class="java"><span style="white-space:pre"> </span>Intent xmlIntent = new Intent(); ComponentName component = new ComponentName("com.winca.style.defaultskin","com.winca.style.defaultskin.RadioReadSettingXMLActivity"); xmlIntent.setComponent(component); addPreferencesFromIntent(xmlIntent);   <pre name="code" class="java"><span style="white-space:pre"> </span>Intent xmlIntent = new Intent(); ComponentName component = new ComponentName("com.winca.style.defaultskin","com.winca.style.defaultskin.RadioReadSettingXMLActivity"); xmlIntent.setComponent(component); addPreferencesFromIntent(xmlIntent); 运行一下,正常显示xml里面的。问题解决。
2023-07-17 11:33:051

什么代码能直接屏蔽所有系统通知

如果是手机系统的话,在设置里有通知选项,可以在通知里把你不想要接收的App的通知功能关掉。
2023-07-17 11:33:242

activity和fragment的生命周期状态各有哪些?状态之间如何变换

Fragment的生命周期初探:因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。当这样进行fragment transaction(转换)的时候,可以把fragment放入Activity的back stack中,这样用户就可以进行返回操作。使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment),所以Fragment的代码看起来和Activity的类似。每当创建一个Fragment时,首先添加以下三个回调方法:onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。 onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。 onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。将Fragment加载到Activity当中有两种方式:方式一:添加Fragment到Activity的布局文件当中 方式二:在Activity的代码中动态添加Fragment(荐)第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。
2023-07-17 11:33:321

android 怎么在自定义控件中获取控件所在fragment的实例

在构造方法,或者set方法等注入fragment,类似很多自定义控件使用Context一样。可以把Fragment想成Activity中的模块,这个模块有自己的布局,有自己的生命周期,单独处理自己的输入,在Activity运行的时候可以加载或者移除Fragment模块。使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment)。
2023-07-17 11:33:401

andriod的PreferenceFragment类的addPreferencesFromResource不管用

的起薪和平均水平是多少
2023-07-17 11:33:471

Android Support Library解释

tags: android support library Google官方 开发者网站 有一篇文章专门解释了这一系列Support Library,网络上的很多文章都翻译自它。文章地址在 这里 。 下面是我自己的一些总结。 最主要的原因就是: 为了能在低版本的Android系统上使用高版本的SDK才具有的新功能、新特性 。比如,Fragment,ActionBar、Material Design风格等。 Google把这些高版本SDK才具有的新特性打包进Support Library,当开发者想使用这些新特性,又需要兼容老版本Android系统时,就可以引入Support Library。当然,这些打包进Support Library的新特性,全部都被完整的包含在了最新的Android SDK中。所以如果开发者的App仅支持最新系统,也可以不引入Support Library。 Google为了使开发者可以方便的引入Support Library,把它们做成了依赖包的形式,通过Gradle可以很方便的引入,例如: 除了最主要的原因,还有其他几点原因,可以参考Google 官方文档 对此的解释。 Android Support Library只是一个名称,并不是一个真正的library,它由多个具体的library集合而成。每个单独的library都包含一些新特性,可以支持不同版本的Android系统,可以被单独引入。 一般来说,每个Support Library包含的新特性都是不同的,它们交叉互补,以插件化的形式提供对低版本系统的支持。 支持Android 1.6(API level 4)及以上。它包含了最多的新特性,典型的有: 引入: 支持Android 2.1(API level 7)及以上。由一系列独立的v7包组成,可以分别引入。 依赖 v4 Support Library 。现在在Android Studio中新建一个工程,默认就会引入这个library。而它又依赖v4 Support Library,所以v4 Support Library也会被默认引入工程。 这个库主要的作用就是提供对 Action Bar 的支持。 使用: 提供了 CardView 控件,一种Material Design风格的卡片形控件。 使用: 提供了 GridLayout 类,一种网格布局控件,与LinearLayout,RelativeLayout同级。 使用: 官方文档的解释是:用来控制多媒体流的分发。但是实际中基本很少用到,有兴趣的可以参考 官方文档 。 提供了 Palete 类,可以从一张图片中提取出它的主色调。 使用: 提供了 RecyclerView 类,一个类似ListView,但是比ListVIew性能更好的控件。一般用来展示大量数据,可以完全替代ListView。 使用: 提供了一系列API,用于支持创建Material Design风格的首选项页面。官方有一篇 指导文档 ,但是感觉虽然方便了开发,但是灵活性和可定制性不高。 使用: 它是Android官方用来方便开发者在应用中实现 Android Material Design 风格的UI而提供的支持库,里面有很多Android官方提供的Material Design风格的 轮子 。主要的轮子有: Google开发者博客上还有一个 视频 ,专门介绍了这个库。 使用: 提供支持多个dex文件的功能,解决方法65536的限制。 使用: 支持Android 2.2(API level 8)及以上。 感觉一般的应用级开发用不到(也可能是我太弱鸡了),具体还是参考 官方文档 吧。 支持Android 3.2(API level 13)及以上。这个library是为在平板上使用 Fragment 而设计的,现在应该几乎用不到了。 使用: 主要是添加了首选项Fragment类- PreferenceFragment 和首选项接口- PreferenceFragment.OnPreferenceDisplayDialogCallback , PreferenceFragment.OnPreferenceStartFragmentCallback , PreferenceFragment.OnPreferenceStartScreenCallback 。与 v7 Preference Support Library 搭配使用,参见 官方文档 。 使用: 提供对注解的支持。 使用: 提供了一些 API ,用于添加和管理自定义tab。 使用: 添加了百分比布局控件,如 PercentFrameLayout , PercentRelativeLayout 。 使用: 提供了在电视平台上,构建首选项页面的接口,作用类似于 v7 Preference Support Library 与 v14 Preference Support Library 。 使用: 提供了在电视平台上,用于构建用户界面的一系列重要控件。以下是一些关键的类: 使用: 在电视平台上,添加了用于做内容推荐的一系列 API 。 使用:
2023-07-17 11:33:541

什么是英文常用单词?

最常用英语单词有accent 加重、accurate 精确、acquire 获得、action 操作,运算、adjust 调整、ambient light 环境光、angle 角度、anti-aliased 平滑处理 arbitrary 任意的等。1常用英语单词1000Aaccent 加重accurate 精确acquire 获得action 操作,运算adjust 调整ambient light 环境光angle 角度anti-aliased 平滑处理arbitrary 任意的arrange 排列arrow 箭头artistic 艺术的,美术的Bbalance 平衡bar 条,栏base 基准batch 批量,成批bevel 使成斜角,斜切bilinear 双线性插值bitmap 位图,点阵图blend 混合,调和blur 模糊bold 加粗border 边界,边框brightness 亮度brush 画笔,笔形build 建造,创立burn 焦化,烧黑button 按钮Ccache 快速存储器calculation 计算calibrate 校准,校验canvas 画布carve 镌刻cascade 层叠chalk 粉笔,作记号channel 通道,频道charcoal 炭笔画chrome 铬黄,铬合金classic 经典的click (单)击(鼠标)clipboard 剪贴版clone 复制cloud 云彩command 命令content 内容continue 连续的,持续的contour 轮廓线,周线contract 收缩,缩小contrast 反差,对比coordinate 协调,协作craquelue 裂纹crayon 蜡笔crop 剪裁crystallize 水晶curl 螺旋状物,卷曲的current 当前的cursor 光标,游标curve 曲线custom 自定义Ddarken 较黑的,使变黑daubs 涂抹define 定义design 设计destination 目标,对象difference 区别,差异diffuse 散乱扩散displace 转移distort 扭曲document 文档,文件dodge 加亮drop shadow 投影duotone 双色调duplicate 复制dust 灰尘,尘土Eedge 边界effect 效果作用embed 嵌入emboss 浮雕enlarge 放大equalize 平均化expand 扩充,扩展export 输出extrude 突出eyedropper 吸管Ffacet 刻面feather 晕开,羽化fill 填充flare 张开,闪耀flatten 变平flip 翻转fragment 碎片fresco 壁画Ggamut 整个领域general 普通的glass 玻璃杯glow 发光gradient 渐变grain 纹理graphics 图形grayscale 灰阶,灰度图grid 坐标格子group 群,组grow 成长guide 参考,参考线Hhalftone 半色调histogram 柱状图horizontal 水平hue 色相Iicon 图标image 图像import 输入index 索引Inner 内部的input 输入intensity 亮度inverse 相反invert 反转,反相Kkeyboard 键盘kilometre 千米,公里Llens 凹凸透镜,焦距level 级别,色阶light 光线location 定位Mmagic 有魔法的magic wand 魔棒mask 遮罩,掩膜maximum 最大值memory 记忆,内存merge 合并,融合minimum 最小值mode 模式,方式modify 修改,改变monitor 显示器,监视器monochrome 单色的mosaic 马塞克motion 运动multichannel 多通道模式Nnegative 负片,负像noise 噪音,糙点numeric 数字化的;分数Ooffset 位移,偏移option 选项ornament 装饰outline 轮廓,外形Ppalette 调色板parameter 参数,参变量paste 粘贴pastel 彩色粉笔,蜡笔画patchwork 补教,式样path 路径pattern 图案perspective 透视pinch 极化,凹陷或突起plug-ins 插件(滤镜)pointillize 乱点描述polar coordinates 极坐标poster 招贴画posterize 色调分离preference 偏好设定preview 预览previous 前一个pseudo 假的purge 消除Rradial 圆形range 范围,领域relief 救济,援救render 渲染,粉刷,上色reticulation 网状物revert 还原,复原ripple 涟漪,波纹rotate 旋转rough 粗略ruler 标尺Ssaturation 色彩饱和度scale 缩放scratch 暂时,临时screen 屏幕seam 缝,接缝selection 选择,工作区selective 精心挑选的separation 分离,分开sharpen 锐化shear 扭曲变形similar 相似的sketch 草图,画稿skew 偏斜的smart 灵活的,精巧的smooth 平滑的smudge 玷污,污点snapshot 快照solarize 中途曝光spatter 溅,洒落sponge 海绵spray 喷,喷涂stain 着色,染色stamp 盖章,盖印status 状态,状况stereo 立体声stroke 笔划,打击swirl 漩涡,卷状物Ttexture 质地,纹理threshold 两阶调化tile 平铺,窗口并联trace 跟踪,镂边trail 痕迹,足迹transform 转变,变形transparency 透明度twirl 卷曲,快速旋转Uultimate 最终的uncommon 罕见,非凡的units 单位,单元Vvertex 顶点,最高点vertical 垂直的video 视频,电视view 视图,显示方式virus 病毒visible 可见的,明显的visual 视觉的vogue 流行,时尚volume (磁盘)容量vortex 漩涡Wwatercolor 水彩watermark 水印wave 波纹,波动welder 焊接workstation 工作站wrinkle 皱纹Zzero 零zigzag 锯齿zoom in 放大zoom out 缩小2背英语单词的最好方法第一步,准备工作:准备若干张小纸条,数目由您要记忆的单词数来决定,用于写您要记忆的英语单词,原则上每张纸条只写一个单词;准备好30个小纸盒子,第1个盒子存放今天学习与复习的单词,第2个盒子存放明天复习的单词... ...,依次类推,第30个盒子存放第30天复习的单词。第二步,添加新单词:每天把220个新单词写成条子放在盒子1中(如果您想多学可以多放点,想少学点也可以少放点),同时把盒子2的单词放到盒子1中,把盒子3的单词放在盒子2中... ...,依次类推。第三步,学习与复习:开始学习盒子1中的单词,同时根据自己的遗忘参数值决定刚学过的单词放在2 -- 30中的哪个盒子中。根据自己复习效果调整自己的遗忘参数值。最好的办法就是应用“艾宾浩斯--满爱镇微分记忆算法模型”。该模式真正做到记忆最轻松,复习次数最少,每次复习花费的时间最少。该模型可以自动适应于您的遗忘规律,对每个人的每个记忆项,动态维护一套遗忘参数,并且是在记忆的过程中进行动态维护,在最需要复习的时候提醒您进行复习,直到记忆熟悉为止。采用该模型进行记忆,比普通传统的方法更轻松、更快捷、更牢固,您根本不需要操心什么时候学习新单词,什么时候复习应该复习的单词,一切工作由系统自动完成,是传统模式无法比拟的。
2023-07-17 11:34:011

Android系统框架参数——求大神注释

这。。这 我估计只有系统开发者可以看懂
2023-07-17 11:34:092

android6.0在fragment中相机权限怎么动态获取

你要在某些地方把图片的地址保存起来,比如数据库,比如sharedpreference。切换的时候重新读取。
2023-07-17 11:34:431

sharedpreference无法读取按钮状态

this.getActivity()会可能返回null,所以你不能这样做。你需要放在onAttach(Activityactivity)里面进行preferences的初始化。
2023-07-17 11:34:501

高手指教一下华为路由器的路由配置命令?

路由器静态路由配置命令4.6.1 ip route配置或删除静态路由。[ no ] ip route ip-address{ mask | mask-length } { interfacce-name| gateway-address } [ preference preference-value] [ reject | blackhole ]【参数说明】ip-address和mask为目的IP地址和掩码,点分十进制格式,由于要求掩码32位中‘1"必须是连续的,因此点分十进制格式的掩码可以用掩码长度mask-length来代替,掩码长度为掩码中连续‘1"的位数。interfacce-name指定该路由的发送接口名,gateway-address为该路由的下一跳IP地址(点分十进制格式)。preference-value为该路由的优先级别,范围0~255。reject指明为不可达路由。blackhole指明为黑洞路由。【缺省情况】系统缺省可以获取到去往与路由器相连子网的子网路由。在配置静态路由时如果不指定优先级,则缺省为60。如果没有指明reject或blackhole,则缺省为可达路由。【命令模式】全局配置模式【使用指南】配置静态路由的注意事项:当目的IP地址和掩码均为0.0.0.0时,配置的缺省路由,即当查找路由表失败后,根据缺省路由进行包的转发。对优先级的不同配置,可以灵活应用路由管理策略,如配置到达相同目的地的多条路由,如果指定相同优先级,则可实现负载分担;如果指定不同优先级,则可实现路由备份。在配置静态路由时,既可指定发送接口,也可指定下一跳地址,到底采用哪种方法,需要根据实际情况而定:对于支持网络地址到链路层地址解析的接口或点到点接口,指定发送接口即可;对于NBMA接口,如封装X.25或帧中继的接口、拨号口等,支持点到多点,这时除了配置IP路由外,还需在链路层建立二次路由,即IP地址到链路层地址的映射(如dialermap ip、x.25 map ip或frame-relay map ip等),这种情? 配置静态路由不能指定发送接口,应配置下一跳IP地址。【举例】配置缺省路由的下一跳为129.102.0.2。Quidway(config)#ip route 0.0.0.0 0.0.0.0 129.102.0.2【相关命令】show ip route,show ip route detail,showip route static4.6.2 show iproute显示路由表摘要信息。show ip route【命令模式】特权用户模式【使用指南】该命令输出以列表方式显示路由表,每一行代表一条路由,内容包括:目的地址/掩码长度协议优先级度量值下一跳输出接口【举例】Quidway#show ip routeRouting Tables:Destination/Mask Proto Pref Metric Nexthop Interface127.0.0.0/8 Static 0 0 127.0.0.1 127.0.0.1(LO0)127.0.0.1/32 Direct 0 0 127.0.0.1 127.0.0.1(LO0)138.102.128.0/17 Direct 0 0 138.102.129.7 138.102.129.7(EN0)202.38.165.0/24 Direct 0 0 202.38.165.1 202.38.165.1(SL1)【相关命令】ip route,show ip route detail,show iproute static4.6.3 showip route detail显示路由表详细信息show ip route detail【命令模式】特权用户模式【使用指南】该命令输出信息帮助用户进行路由方面的故障诊断。【举例】Quidway#show ip route detailRoute state descriptionNoAdv: do not advertiset Int: AS Interior routeExt: AS External route Del: route to be deletedActive: current route Retain: route retains in the routingtableRej: rejecting route Black: black hole routeRouting Tables:Generate Default: no+ = Active Route, - = Last Active, * = BothDestinations: 4 Routes: 4Holddown: 0 Delete: 9 Hidden: 0**Destination: 127.0.0.0 Mask: 255.0.0.0Protocol: *Static Preference: 0NextHop: 127.0.0.1 Interface: 127.0.0.1(LO0)State: $#@60;NoAdv Int Active Retain Rej$#@62;Age: 19:31:06 Metric: 0/0**Destination: 127.0.0.1 Mask: 255.255.255.255Protocol: *Direct Preference: 0NextHop: 127.0.0.1 Interface: 127.0.0.1(LO0)State: $#@60;NoAdv Int Active Retain$#@62;Age: 114:03:05 Metric: 0/0Holddown路由指的是:一些distance vector 路由协议(如RIP),为了避免错误路由的扩散,提高路由不可达信息的快速准确传播,而采用的一种路由发布策略。它往往在一段时间间隔内固定地发布某条路由,而不管当前实际找回的到同一目的的路由发生了什么变化。其细节参见具体的路由协议。在路由表统计中显示的是当前被Holddown的路由数目。有些路由由于某种原因(如接口Down)暂时不可用,但是又不希望被删除,我们把这种路由隐藏起来。以便以后能重新恢复在路由表统计中显示的是当前被隐藏的路由数目。【相关命令】ip route,show ip route,show ip route static4.6.4 showip route static显示静态路由表。show ip route static【命令模式】特权用户模式【使用指南】根据该命令输出信息,可以帮助用户确认对静态路由的配置是否正确。【举例】Quidway#show ip route staticStatic routes for family INET: (* indicates gateway(s)in use)1.2.3.0/24 pref 60 $#@60;Int$#@62; intf EN0127.0.0.0/8 pref 0 $#@60;NoAdv Int Retain Rej$#@62; intf 127.0.0.1以列表的方式显示静态路由表,每一行代表一条静态路由,从左到右依次为:目的地址/掩码长度优先级$#@60;状态参数$#@62;输出接口和下一跳【相关命令】ip route,show ip route,show ip route detail路由器IP性能配置命令4.5.1 clear ip counters清除IP统计信息。clear ip counters【命令模式】特权用户模式【使用指南】在某些特殊情况下,需要清除IP统计信息,重新进行统计。【举例】清除IP统计信息。Quidway#clear ip counters【相关命令】show ip interface,show ip traffic4.5.2 ifquelen ip配置IP接收队列长度。ifquelen ip queue-length【参数说明】queue-length为接口队列长度。【命令模式】全局配置模式【使用指南】配置IP接收队列长度,会影响系统运行效率,最好在技术支持人员的指导下进行。【举例】配置IP的接收队列为70。Quidway(config)#ifquelen ip 70【相关命令】show ip interface4.5.3 ifquelen arp配置ARP接收队列长度。ifquelen arp queue-length【参数说明】queue-length为接口队列长度。【命令模式】全局配置模式【使用指南】配置ARP接收队列长度,可能会影响到以太网口运行效率,最好在技术支持人员的指导下配置。【举例】配置ARP的接收队列长度为70。Quidway(config)#ifquelen arp 70【相关命令】show ip interface4.5.4 ip tcp header-compression允许或禁止接口上TC 文头压缩。[ no ] ip tcp header-compression【缺省情况】接口上缺省为禁止TCP报文头压缩。【命令模式】接口配置模式【使用指南】在低速广域网线路上运行PPP协议时,由于TCP报文头占全部传输数据的很大比例,这时可以对TCP报文头压缩以提高数据传输效率。【举例】在PPP接口Serial0上允许TCP报文头压缩。Quidway(config-if-Serial0)#ip tcp header-compression【相关命令】encapsulation ppp4.5.5 show ip cache显示IP路由缓冲。show ip cache【命令模式】特权用户模式【使用指南】显示IP最近使用过的路由,帮助用户进行故障诊断。【举例】Quidway#show ip cacheRoute to destination 129.102.100.141:Destination NetMask Type Interface GateWay129.102.100.141 255.255.255.255 direct Ethernet0上面显示信息表示最近刚使用过的路由是到达129.102.100.141的路由。该路由是一条直接路由,输出接口为Ethernet0。 【相关命令】ip route4.5.6 show ip interface显示IP接口信息。show ip interface [ interface-type interface-number ]【参数说明】interface-type为接口类型。interface-number为接口编号。【缺省情况】如果不指定接口,则缺省显示全部IP接口信息。【命令模式】特权用户模式【使用指南】该命令输出接口上全部与IP有关的信息,有助于故障诊断。【举例】Quidway#show ip interface serial 0Interface is Serial0, Index is 2ifFlags=8004 $#@60;NBMA,MULTICAST$#@62;protocol is x25 dte ietf, MTU is 1500, speed is 64000 bpsinput queue is 0/75/0 (current/max/drops)output queue is 0/75/0 (current/max/drops)0 packets input, 0 bytes, 0 multicasts0 input packets dropped, 0 no protocols, 0 input errors0 packets output, 0 bytes, 0 multicasts, 0 output errors上面显示信息表示接口Serial0 编号为2;处于NBMA模式,支持组播;该接口封装的链路层协议是X.25协议,最大传输单元是1500字节,传输速率为64000bps。再以下的信息主要反映了该接口报文的收发情况,比如说接收和发送队列的最大长度、当前队列中报文数和由于队列满而丢弃报文数,接收和发送的报文数,接收和发送的组播报文数,不能识别的报文数等等。【相关命令】show interface4.5.7 show ip traffic显示IP流量统计信息。show ip traffic【命令模式】特权用户模式【使用指南】该命令显示IP收发和拆包、组包的统计信息,有助于故障诊断。【举例】Quidway#show ip trafficIP statistics:Rcvd: 1370 total, 1349 local destination0 format errors, 0 checksum errors0 unknown protocol, 0 bad optionsFrags: 0 fragment rcvd, 0 fragment dropped0 reassembled, 0 timeouts0 fragmented, 0 couldnt fragment, 0 fragment sentSent: 359 generated, 0 forwarded, 0 raw ip packets0 dropped, 0 no route, 0 Compress failsICMP statistics:Rcvd: 0 format errors, 0 checksum errors0 redirects, 0 unreachable, 14 echo, 0 echo reply0 mask requests, 0 mask replies, 0 quench0 parameter, 0 timestamp, 0 info requestSent: 0 redirects, 0 unreachable, 0 echo, 14 echo reply0 mask requests, 0 mask replies, 0 quench0 parameter problem, 0 timestamp, 0 info reply以上显示信息包括:IP 统计信息:接收:接收到1664 个报文,其中1638 个报文送给上层协议,没有报文格式错,没有报文校验错,没有未知协议报文,没有报文选项错。分片:没有收到分片,没有丢弃分片,重装成功的分片数为0,超时分片为数为0;分组成功的报文数为0,不能被分组的报文数为0,被创建发送分片数为0。发送:产生报文470 个,被转发报文数为0,产生原始IP报文数为0,被丢弃报文数为0,无法路由的报文的报文数为0,压缩失败的报文数为0。ICMP统计信息:接收:接收到格式错报文数为0,校验字错报文数为0,重定向报文数为0,不可达报文数为0,echo请求报文16个, echo应答报文数为0,掩码请求报文数为0,掩码应答报文数为0,源站抑制报文数为0,参数错报文数为0,时间戳请求报文数为0,信息请求报文数为0。发送:发送重定向报文数为0,目的站不可达报文数为0,echo请求报文数为0,echo应答报文16 个,掩码请求报文数为0,掩码应答报文数为0,源站抑制报文数为0,参数错报文数为0,时间戳请求报文数为0,信息应答报文数为0。【相关命令】show interface,show ip interface,clear ip counters4.5.8 show tcp brief显示TCP连接状态。show tcp brief【命令模式】特权用户模式【使用指南】该命令显示全部TCP连接状态,使用户随时监控TCP连接。【举例】Quidway#show tcp briefLocalAddress LocalPort ForeignAddress ForeignPort State129.102.100.142 23 129.102.001.092 1038 ESTABLISHED000.000.000.000 23 000.000.000.000 0 LISTEN以上显示信息表示:一个TCP连接已经建立,该TCP连接的本地IP地址为129.102.100.142,本地端口号为23,远地IP地址为129.102.1.92,远地端口号为1038,另外本地有一个对23号端口监听的服务器。【相关命令】show client4.5.9 tcp finwait-time配置TCP finwait定时器。tcp finwait-time time-value【参数说明】time-value为TCP finwait定时器值,单位秒,范围76~3600。【缺省情况】TCP finwait定时器缺省为675秒。【命令模式】全局配置模式【使用指南】当TCP的连接状态由FIN_WATI_1变为FIN_WAIT_2时启动finwait定时器。若finwait定时器超时前仍未收到FIN报文,则TCP连接被终止。对该参数的配置最好在技术支持人员的指导下进行。【举例】配置TCP finwait定时器的值为675秒。Quidway(config)#tcp finwait-time 675【相关命令】tcp synwait-time,tcp window-size4.5.10 tcp synwait-time配置TCP synwait定时器。tcp synwait-time time-value【参数说明】time-value为TCP synwait 定时器值,单位秒,范围2~600。【缺省情况】TCP synwait定时器缺省值为75秒。【命令模式】全局配置模式【使用指南】当发送syn报文时,TCP启动synwait定时器,若synwait超时前未收到回应报文,则TCP连接将被终止。对该参数的配置最好在技术支持人员的指导下进行。【举例】配置TCP synwait定时器为75秒。Quidway(config)#tcp synwait-time 75【相关命令】tcp finwait-time,tcp window-size4.5.11 tcp window-size配置面向连接Socket的收发缓冲区大小。tcp window-size window-size【参数说明】window-size为面向连接Socket的收发缓冲区大小,单位K字节,范围1~32。【缺省情况】面向连接Socket的收发缓冲区大小缺省为4K字节。【命令模式】全局配置模式【使用指南】对该参数的配置最好在技术支持人员的指导下进行。【举例】配置面向连接Socket的收发缓冲区大小为4K字节。Quidway(config)#tcp window-size 4【相关命令】tcp finwait-time,tcp synwait-time【end】
2023-07-17 11:35:091

android,xml开发,下面的header干嘛用的?android:fragment又是什么?我在文档查不到?“org…ment"干什

header是用在PreferenceActivity里面的。你可以看看平板的系统选项,分别是左边的header对应右边的内容。只要是用在PreferenceActivity里面onBuildHeaders方法。
2023-07-17 11:35:361

怎么样得到引用的类属于那一个JAR包中的

ctrl+鼠标左键 点击该引用的类名,就能跳转到该类文件了,然后在顶栏就能看到类所在的JAR包目录例如:我想寻找下方的PreferenceFragment 是在哪个JAR包下步骤一:ctrl+鼠标左键点击PreferenceFragment 步骤二:此时跳转到了PreferenceFragment 所在的class文件,顶栏看到了该类所在的package步骤三:在左边项目栏--选择Project,然后点一下“2”,就会定位到包所在了,此时能看到preference下确实有PreferenceFragment类 (也可以Ctrl+左击 步骤二中 顶栏的android.preference,也能跳转到包目录)PS:若用的是Eclipse,一般执行步骤二就能看到JAR包目录了。关键点是:CTRL+鼠标左击 方法名 或 类名
2023-07-17 11:35:511

如何在Fragment中使用PreferenceFragment

public FragmentSetup() { // Required empty public constructor } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflat...
2023-07-17 11:36:002

如何在Fragment中使用PreferenceFragment-CSDN论坛

public FragmentSetup() { // Required empty public constructor}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_setup, container, false);}@Overridepublic void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); // Load the preferences from an XML resource}
2023-07-17 11:36:081

android fragment相互切换的时候生命周期怎么走

Fragment的生命周期初探:因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。当这样进行fragment transaction(转换)的时候,可以把fragment放入Activity的back stack中,这样用户就可以进行返回操作。使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment),所以Fragment的代码看起来和Activity的类似。每当创建一个Fragment时,首先添加以下三个回调方法:onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。 onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。 onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。将Fragment加载到Activity当中有两种方式:方式一:添加Fragment到Activity的布局文件当中 方式二:在Activity的代码中动态添加Fragment(荐)第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。
2023-07-17 11:36:152

android fragment相互切换的时候生命周期怎么走

Fragment的生命周期初探:因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。当这样进行fragment transaction(转换)的时候,可以把fragment放入Activity的back stack中,这样用户就可以进行返回操作。使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment),所以Fragment的代码看起来和Activity的类似。每当创建一个Fragment时,首先添加以下三个回调方法:onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。 onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。 onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。将Fragment加载到Activity当中有两种方式:方式一:添加Fragment到Activity的布局文件当中 方式二:在Activity的代码中动态添加Fragment(荐)第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。
2023-07-17 11:36:471

android 怎么在自定义控件中获取控件所在fragment的实例

getFragmentManager().findFragmentById(id).getView().findViewById(id) 这样应该就可以了
2023-07-17 11:36:552

继承PreferenceActivity,报需要验证fragment是否有效

@Overrideprotected boolean isValidFragment (String fragmentName) {return [YOUR_FRAGMENT_NAME].class.getName().equals(fragmentName);}或者@Overrideprotected boolean isValidFragment (String fragmentName) {return true;}
2023-07-17 11:37:021

如何将activity装载进fragment

  Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面,并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。    Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。然而,当activity运行时(在onResume()之后,onPause()之前),你可以单独地操作每个Fragment,比如添加或删除它们。当你在执行上述针对Fragment的事务时,你可以将事务添加到一个栈中,这个栈被activity管理,栈中的每一条都是一个Fragment的一次事务。有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键(向后导航)。    当向activity中添加一个Fragment时,它须置于ViewGroup控件中,并且需定义Fragment自己的界面。你可以在layoutxml文件中声明Fragment,元素为:<fragment>;也可以在代码中创建Fragment,然后把它加入到ViewGroup控件中。然而,Fragment不一定非要放在activity的界面中,它可以隐藏在后台为actvitiy工作。    设计的哲学:    为了让界面可以在平板上更好地展示,Android在3.0版本引入了Fragment(碎片)功能,通过官方文档中的这张图片可以很明显地看到Fragment的好处:        注:左边为平板,右边为手持设备。        二、Fragment的生命周期:    因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。    如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。    但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。    当这样进行fragment transaction(转换)的时候,可以把fragment放入Activity的back stack中,这样用户就可以进行返回操作。    使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment),所以Fragment的代码看起来和Activity的类似。    每当创建一个Fragment时,首先添加以下三个回调方法:    onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。  onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。  onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。  将Fragment加载到Activity当中有两种方式:    方式一:添加Fragment到Activity的布局文件当中  方式二:在Activity的代码中动态添加Fragment  第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。    第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。
2023-07-17 11:37:091

常用英语单词5000

最常用英语单词有accent 加重、accurate 精确、acquire 获得、action 操作,运算、adjust 调整、ambient light 环境光、angle 角度、anti-aliased 平滑处理 arbitrary 任意的等。1常用英语单词1000Aaccent 加重accurate 精确acquire 获得action 操作,运算adjust 调整ambient light 环境光angle 角度anti-aliased 平滑处理arbitrary 任意的arrange 排列arrow 箭头artistic 艺术的,美术的Bbalance 平衡bar 条,栏base 基准batch 批量,成批bevel 使成斜角,斜切bilinear 双线性插值bitmap 位图,点阵图blend 混合,调和blur 模糊bold 加粗border 边界,边框brightness 亮度brush 画笔,笔形build 建造,创立burn 焦化,烧黑button 按钮Ccache 快速存储器calculation 计算calibrate 校准,校验canvas 画布carve 镌刻cascade 层叠chalk 粉笔,作记号channel 通道,频道charcoal 炭笔画chrome 铬黄,铬合金classic 经典的click (单)击(鼠标)clipboard 剪贴版clone 复制cloud 云彩command 命令content 内容continue 连续的,持续的contour 轮廓线,周线contract 收缩,缩小contrast 反差,对比coordinate 协调,协作craquelue 裂纹crayon 蜡笔crop 剪裁crystallize 水晶curl 螺旋状物,卷曲的current 当前的cursor 光标,游标curve 曲线custom 自定义Ddarken 较黑的,使变黑daubs 涂抹define 定义design 设计destination 目标,对象difference 区别,差异diffuse 散乱扩散displace 转移distort 扭曲document 文档,文件dodge 加亮drop shadow 投影duotone 双色调duplicate 复制dust 灰尘,尘土Eedge 边界effect 效果作用embed 嵌入emboss 浮雕enlarge 放大equalize 平均化expand 扩充,扩展export 输出extrude 突出eyedropper 吸管Ffacet 刻面feather 晕开,羽化fill 填充flare 张开,闪耀flatten 变平flip 翻转fragment 碎片fresco 壁画Ggamut 整个领域general 普通的glass 玻璃杯glow 发光gradient 渐变grain 纹理graphics 图形grayscale 灰阶,灰度图grid 坐标格子group 群,组grow 成长guide 参考,参考线Hhalftone 半色调histogram 柱状图horizontal 水平hue 色相Iicon 图标image 图像import 输入index 索引Inner 内部的input 输入intensity 亮度inverse 相反invert 反转,反相Kkeyboard 键盘kilometre 千米,公里Llens 凹凸透镜,焦距level 级别,色阶light 光线location 定位Mmagic 有魔法的magic wand 魔棒mask 遮罩,掩膜maximum 最大值memory 记忆,内存merge 合并,融合minimum 最小值mode 模式,方式modify 修改,改变monitor 显示器,监视器monochrome 单色的mosaic 马塞克motion 运动multichannel 多通道模式Nnegative 负片,负像noise 噪音,糙点numeric 数字化的;分数Ooffset 位移,偏移option 选项ornament 装饰outline 轮廓,外形Ppalette 调色板parameter 参数,参变量paste 粘贴pastel 彩色粉笔,蜡笔画patchwork 补教,式样path 路径pattern 图案perspective 透视pinch 极化,凹陷或突起plug-ins 插件(滤镜)pointillize 乱点描述polar coordinates 极坐标poster 招贴画posterize 色调分离preference 偏好设定preview 预览previous 前一个pseudo 假的purge 消除Rradial 圆形range 范围,领域relief 救济,援救render 渲染,粉刷,上色reticulation 网状物revert 还原,复原ripple 涟漪,波纹rotate 旋转rough 粗略ruler 标尺Ssaturation 色彩饱和度scale 缩放scratch 暂时,临时screen 屏幕seam 缝,接缝selection 选择,工作区selective 精心挑选的separation 分离,分开sharpen 锐化shear 扭曲变形similar 相似的sketch 草图,画稿skew 偏斜的smart 灵活的,精巧的smooth 平滑的smudge 玷污,污点snapshot 快照solarize 中途曝光spatter 溅,洒落sponge 海绵spray 喷,喷涂stain 着色,染色stamp 盖章,盖印status 状态,状况stereo 立体声stroke 笔划,打击swirl 漩涡,卷状物Ttexture 质地,纹理threshold 两阶调化tile 平铺,窗口并联trace 跟踪,镂边trail 痕迹,足迹transform 转变,变形transparency 透明度twirl 卷曲,快速旋转Uultimate 最终的uncommon 罕见,非凡的units 单位,单元Vvertex 顶点,最高点vertical 垂直的video 视频,电视view 视图,显示方式virus 病毒visible 可见的,明显的visual 视觉的vogue 流行,时尚volume (磁盘)容量vortex 漩涡Wwatercolor 水彩watermark 水印wave 波纹,波动welder 焊接workstation 工作站wrinkle 皱纹Zzero 零zigzag 锯齿zoom in 放大zoom out 缩小2背英语单词的最好方法第一步,准备工作:准备若干张小纸条,数目由您要记忆的单词数来决定,用于写您要记忆的英语单词,原则上每张纸条只写一个单词;准备好30个小纸盒子,第1个盒子存放今天学习与复习的单词,第2个盒子存放明天复习的单词... ...,依次类推,第30个盒子存放第30天复习的单词。第二步,添加新单词:每天把220个新单词写成条子放在盒子1中(如果您想多学可以多放点,想少学点也可以少放点),同时把盒子2的单词放到盒子1中,把盒子3的单词放在盒子2中... ...,依次类推。第三步,学习与复习:开始学习盒子1中的单词,同时根据自己的遗忘参数值决定刚学过的单词放在2 -- 30中的哪个盒子中。根据自己复习效果调整自己的遗忘参数值。最好的办法就是应用“艾宾浩斯--满爱镇微分记忆算法模型”。该模式真正做到记忆最轻松,复习次数最少,每次复习花费的时间最少。该模型可以自动适应于您的遗忘规律,对每个人的每个记忆项,动态维护一套遗忘参数,并且是在记忆的过程中进行动态维护,在最需要复习的时候提醒您进行复习,直到记忆熟悉为止。采用该模型进行记忆,比普通传统的方法更轻松、更快捷、更牢固,您根本不需要操心什么时候学习新单词,什么时候复习应该复习的单词,一切工作由系统自动完成,是传统模式无法比拟的。
2023-07-17 11:37:171

android addpreferencesfromintent没有

  addPreferencesFromResource(R.xml.setting_preference);  因为最近的项目我都要把程序的资源文件都放到另一个apk中。而上面这个方法中只能传本地的或系统的资源id。那么我就找到了类似的方法:addPreferencesFromIntent(Intent intent);百度goolge了一下发现都是没有这个方法的例子只有搜索google的里面的api:  public void addPreferencesFromIntent (Intent intent)  Since: API Level 1  This method is deprecated.This function is not relevant for a modern fragment-based PreferenceActivity.  Adds preferences from activities that match the given Intent.  Parameters  intent  The Intent to query activities.  这样介绍就很简单了,只是让我们去查询activities。没有说明xml是什么给的。没办法我只能去看源码,看他们是什么解析Intent的,那我就给出一个可用的intent。  因为是继承PreferenceFragment的,我就从源码找到frameworks/base/core/java/android/preference/PreferenceFragment.java这个类:  view plaincopy to clipboardprint?  <span style="white-space:pre"> </span>public void addPreferencesFromIntent(Intent intent) { requirePreferenceManager(); setPreferenceScreen(mPreferenceManager.inflateFromIntent(intent, getPreferenceScreen())); }  <span style="white-space:pre"> </span>public void addPreferencesFromIntent(Intent intent) { requirePreferenceManager(); setPreferenceScreen(mPreferenceManager.inflateFromIntent(intent, getPreferenceScreen())); }然后这里又用到了mPreferenceManager.inflateFromIntentt(intent, getPreferenceScreen()),那么在找到这个类frameworks/base/core/java/android/preference/PreferenceManager.java:  view plaincopy to clipboardprint?  <span style="white-space:pre"> </span>PreferenceScreen inflateFromIntent(Intent queryIntent, PreferenceScreen rootPreferences) { final List<ResolveInfo> activities = queryIntentActivities(queryIntent); final HashSet<String> inflatedRes = new HashSet<String>(); for (int i = activities.size() - 1; i >= 0; i--) { final ActivityInfo activityInfo = activities.get(i).activityInfo; final Bundle metaData = activityInfo.metaData; if ((metaData == null) || !metaData.containsKey(METADATA_KEY_PREFERENCES)) { continue; } // Need to concat the package with res ID since the same res ID // can be re-used across contexts final String uniqueResId = activityInfo.packageName + ":" + activityInfo.metaData.getInt(METADATA_KEY_PREFERENCES); if (!inflatedRes.contains(uniqueResId)) { inflatedRes.add(uniqueResId); final Context context; try { context = mContext.createPackageContext(activityInfo.packageName, 0); } catch (NameNotFoundException e) { Log.w(TAG, "Could not create context for " + activityInfo.packageName + ": " + Log.getStackTraceString(e)); continue; } final PreferenceInflater inflater = new PreferenceInflater(context, this); final XmlResourceParser parser = activityInfo.loadXmlMetaData(context .getPackageManager(), METADATA_KEY_PREFERENCES); rootPreferences = (PreferenceScreen) inflater .inflate(parser, rootPreferences, true); parser.close(); } } rootPreferences.onAttachedToHierarchy(this); return rootPreferences; }  <span style="white-space:pre"> </span>PreferenceScreen inflateFromIntent(Intent queryIntent, PreferenceScreen rootPreferences) { final List<ResolveInfo> activities = queryIntentActivities(queryIntent); final HashSet<String> inflatedRes = new HashSet<String>(); for (int i = activities.size() - 1; i >= 0; i--) { final ActivityInfo activityInfo = activities.get(i).activityInfo; final Bundle metaData = activityInfo.metaData; if ((metaData == null) || !metaData.containsKey(METADATA_KEY_PREFERENCES)) { continue; } // Need to concat the package with res ID since the same res ID // can be re-used across contexts final String uniqueResId = activityInfo.packageName + ":" + activityInfo.metaData.getInt(METADATA_KEY_PREFERENCES); if (!inflatedRes.contains(uniqueResId)) { inflatedRes.add(uniqueResId); final Context context; try { context = mContext.createPackageContext(activityInfo.packageName, 0); } catch (NameNotFoundException e) { Log.w(TAG, "Could not create context for " + activityInfo.packageName + ": " + Log.getStackTraceString(e)); continue; } final PreferenceInflater inflater = new PreferenceInflater(context, this); final XmlResourceParser parser = activityInfo.loadXmlMetaData(context .getPackageManager(), METADATA_KEY_PREFERENCES); rootPreferences = (PreferenceScreen) inflater .inflate(parser, rootPreferences, true); parser.close(); } } rootPreferences.onAttachedToHierarchy(this); return rootPreferences; }从上面的代码我们就知道要从intent中获取一组activity。通过 activityInfo.metaData.getInt(METADATA_KEY_PREFERENCES)我们知道就是从activity拿的<meta-data 这些数据,那么我们在AndroidManifest.xml中eclipse提示的<meta-data只有三个属性:  那么我么就不难得出结论<meta-data 中的nane就是METADATA_KEY_PREFERENCES,而xml就是resource。  接下来还有一个问题就是METADATA_KEY_PREFERENCES的值是多少。搜一下在PreferenceManager.java中有如下定义:  view plaincopy to clipboardprint?  public static final String METADATA_KEY_PREFERENCES = "android.preference";  public static final String METADATA_KEY_PREFERENCES = "android.preference";知道了以上原理我们来验证一下:  新建一个工程,在里面的activity标签中加<meta-data,如下:  view plaincopy to clipboardprint?  <span style="white-space:pre"> </span><activity android:name="com.winca.style.defaultskin.RadioReadSettingXMLActivity" android:icon="@drawable/radio" android:label="@string/radio_app_name" > <meta-data android:name="android.preference" android:resource="@xml/setting_preference"/> </activity>  <span style="white-space:pre"> </span><activity android:name="com.winca.style.defaultskin.RadioReadSettingXMLActivity" android:icon="@drawable/radio" android:label="@string/radio_app_name" > <meta-data android:name="android.preference" android:resource="@xml/setting_preference"/> </activity>这个xml就是从我们程序中拷贝多来放到新建的工程中的。  原来我们工程用的addPreferencesFromResource(R.xml.setting_preference);这语句,我们这样替换:  view plaincopy to clipboardprint?  <pre name="code" class="java"><span style="white-space:pre"> </span>Intent xmlIntent = new Intent(); ComponentName component = new ComponentName("com.winca.style.defaultskin","com.winca.style.defaultskin.RadioReadSettingXMLActivity"); xmlIntent.setComponent(component); addPreferencesFromIntent(xmlIntent);  <pre name="code" class="java"><span style="white-space:pre"> </span>Intent xmlIntent = new Intent(); ComponentName component = new ComponentName("com.winca.style.defaultskin","com.winca.style.defaultskin.RadioReadSettingXMLActivity"); xmlIntent.setComponent(component); addPreferencesFromIntent(xmlIntent);运行一下,正常显示xml里面的。问题解决。
2023-07-17 11:37:241

java在主activity中能访问到fragment的空间吗

Android上的界面展示都是通过Activity实现的,Activity实在是太常用了。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后每个"小Activity"又可以拥有自己的布局。因此,我们今天的主角Fragment登场了。 一、Fragment初探: Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面,并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。 Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。然而,当activity运行时(在onResume()之后,onPause()之前),你可以单独地操作每个Fragment,比如添加或删除它们。当你在执行上述针对Fragment的事务时,你可以将事务添加到一个栈中,这个栈被activity管理,栈中的每一条都是一个Fragment的一次事务。有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键(向后导航)。 当向activity中添加一个Fragment时,它须置于ViewGroup控件中,并且需定义Fragment自己的界面。你可以在layoutxml文件中声明Fragment,元素为:<fragment>;也可以在代码中创建Fragment,然后把它加入到ViewGroup控件中。然而,Fragment不一定非要放在activity的界面中,它可以隐藏在后台为actvitiy工作。 设计的哲学: 为了让界面可以在平板上更好地展示,Android在3.0版本引入了Fragment(碎片)功能,通过官方文档中的这张图片可以很明显地看到Fragment的好处:注:左边为平板,右边为手持设备。二、Fragment的生命周期: 因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。 如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。 但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。 当这样进行fragment transaction(转换)的时候,可以把fragment放入Activity的back stack中,这样用户就可以进行返回操作。 使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment),所以Fragment的代码看起来和Activity的类似。 每当创建一个Fragment时,首先添加以下三个回调方法: onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。将Fragment加载到Activity当中有两种方式: 方式一:添加Fragment到Activity的布局文件当中方式二:在Activity的代码中动态添加Fragment第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。 第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。 下面将分别介绍一下。    三、在Activity的布局文件中添加Fragment:(不推荐) 平板的模拟器参数如下:然后新建一个工程文件。然后继续如下步骤: (1)新建文件fragment_hello.xml和HelloFragment.java: fragment_hello.xml代码如下:(即Fragment的布局文件) 复制代码<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入内容"/> <RatingBar android:id="@+id/ratingBar1" android:layout_width="wrap_content" android:layout_height="wrap_content" /></LinearLayout>复制代码HelloFragment.java代码如下: 复制代码 1 package com.example.m01_fragment01; 2 3 import android.app.Fragment; 4 import android.os.Bundle; 5 import android.view.LayoutInflater; 6 import android.view.View; 7 import android.view.ViewGroup; 8 9 public class HelloFragment extends Fragment {10 11 @Override12 public void onCreate(Bundle savedInstanceState) {13 super.onCreate(savedInstanceState);14 }15 16 @Override17 public View onCreateView(LayoutInflater inflater, ViewGroup container,18 Bundle savedInstanceState) {19 View view = inflater.inflate(R.layout.fragment_hello, null); // View android.view.LayoutInflater.inflate(int resource, ViewGroup root) 20 return view;21 }22 23 @Override24 public void onPause() {25 super.onPause();26 }27 }复制代码重点在于第19和20行,通过inflate()方法将自定义的fragment的布局加载进来。 19行代码中,第二个参数中,如果布局没有根,那就用null。 注:上方代码中,因为我们的程序是面对Android 4.0以上版本的,所以导入Fragment的包时,选择第一个:android.app.Fragment(2)将Fragment添加到Activity的布局中: 修改activity_main.xml的代码如下: 复制代码 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 tools:context=".MainActivity" > 6 7 <fragment 8 android:id="@+id/fragment_hello" 9 android:name="com.example.m01_fragment02.HelloFragment"10 android:layout_width="wrap_content"11 android:layout_height="wrap_content" />12 </LinearLayout>复制代码08行和09行是关键。其中android:name属性填上你自己创建的fragment的完整类名。如下图:当系统创建这个Activity的布局文件时,系统会实例化每一个fragment,并且调用它们的onCreateView()方法,来获得相应fragment的布局,并将返回值插入fragment标签所在的地方。 运行之后,效果如下:实际上,这种方式在开发中并不推荐,我们来介绍另外一种方法。四、在activity代码中添加fragment: 【实例】点击左侧fragment中的按钮,弹出右侧的fragment。新建一个工程文件,然后步骤如下: (1)将activity_main的布局分为两部分:左边占1/4,右边占3/4。修改activity_main.xml的代码如下: 复制代码<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" tools:context=".MainActivity" android:orientation="horizontal" > <LinearLayout android:id="@+id/left" android:layout_width="0dp" android:layout_height="match_parent" android:orientation="vertical" android:layout_weight="1" android:background="#00BFFF" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="显示"/> </LinearLayout> <LinearLayout android:id="@+id/right" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="3" android:background="#00FFFF" android:orientation="vertical" > </LinearLayout> </LinearLayout>复制代码上方代码中,一个LinearLayout代表一个Fragment的容器,记得要给每个fragment加一个容器的id。
2023-07-17 11:37:311

如何在activity中默认加载一个listfragment-CSDN论坛

  Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面,并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。    Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。然而,当activity运行时(在onResume()之后,onPause()之前),你可以单独地操作每个Fragment,比如添加或删除它们。当你在执行上述针对Fragment的事务时,你可以将事务添加到一个栈中,这个栈被activity管理,栈中的每一条都是一个Fragment的一次事务。有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键(向后导航)。    当向activity中添加一个Fragment时,它须置于ViewGroup控件中,并且需定义Fragment自己的界面。你可以在layoutxml文件中声明Fragment,元素为:<fragment>;也可以在代码中创建Fragment,然后把它加入到ViewGroup控件中。然而,Fragment不一定非要放在activity的界面中,它可以隐藏在后台为actvitiy工作。    设计的哲学:    为了让界面可以在平板上更好地展示,Android在3.0版本引入了Fragment(碎片)功能,通过官方文档中的这张图片可以很明显地看到Fragment的好处:        注:左边为平板,右边为手持设备。        二、Fragment的生命周期:    因为Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。    如果Activity是暂停状态,其中所有的Fragment都是暂停状态;如果Activity是stopped状态,这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。    但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。    当这样进行fragment transaction(转换)的时候,可以把fragment放入Activity的back stack中,这样用户就可以进行返回操作。    使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment, WebViewFragment),所以Fragment的代码看起来和Activity的类似。    每当创建一个Fragment时,首先添加以下三个回调方法:    onCreate():系统在创建Fragment的时候调用这个方法,这里应该初始化相关的组件,一些即便是被暂停或者被停止时依然需要保留的东西。  onCreateView():当第一次绘制Fragment的UI时系统调用这个方法,该方法将返回一个View,如果Fragment不提供UI也可以返回null。注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。  onPause():当用户离开Fragment时第一个调用这个方法,需要提交一些变化,因为用户很可能不再返回来。  将Fragment加载到Activity当中有两种方式:    方式一:添加Fragment到Activity的布局文件当中  方式二:在Activity的代码中动态添加Fragment  第一种方式虽然简单但灵活性不够。添加Fragment到Activity的布局文件当中,就等同于将Fragment及其视图与activity的视图绑定在一起,且在activity的生命周期过程中,无法切换fragment视图。    第二种方式比较复杂,但也是唯一一种可以在运行时控制fragment的方式(加载、移除、替换)。
2023-07-17 11:37:391

taxi的优点缺点

优缺点如下:1、taxi优点是快,招手停,缺点是可能被绕路,高峰期一样打不到车适宜赶时间用。2、优点是可以决定付款方式,在线支付或者现金支付,缺点是价格贵。3、优点是实现巡网一体的出租车叫车方式,让市民能更快捷叫到出租车,缺点是遇到拥堵路段时,司机一般会选择绕路。
2023-07-17 11:35:341

英文电影经典台词

i will be back是《终结者》施瓦辛格的经典台词.
2023-07-17 11:35:354

求适合讲给小学生听的有趣小故事,急急!!!

Today is Friday, clear day.I gt up early, and have breakfast, start writing an industry.Noon, the families have rice, grandpa go to bed.The mother goes to a supermarket to buy thing to do dinner together with me, we bought a lot of things, there is tomato, eggplant, etc..We had abundant one meal.I"m happy today.今天是星期五,晴朗的一天。我早早起了床,吃完早餐,就开始写作业。到了中午,一家人吃完了饭,爷爷就去睡觉了。妈妈和我一起去超市买东西做晚餐,我们买了很多东西,有西红柿,茄子,等等。我们吃了丰富的一餐.今天我很高兴。
2023-07-17 11:35:353

天马座的幻想 假名中文歌词

歌曲:天马座的幻想作曲:草野正宗演唱:日本乐队スピッツ (SPITZ)作词:日本乐队スピッツ (SPITZ)歌词:灯りを消したまま话を続けたら关了灯就这样继续着谈话ガラスの向こう侧で星がひとつ消えた就在玻璃窗的对面 一颗星星消失了からまわりしながら通りを駆け抜けて即使白费工夫也要努力加速跑出这条街砕けるその时は君の名前だけ呼ぶよ闪了腰时也只是呼喊着你的名字広すぎる霊园のそばの このアパートは薄ぐもり太过空旷的墓园旁的公寓 笼罩着薄雾暖かい幻を见てた看的见温暖的幻影猫になりたい 君の腕の中想要变成猫 在你的臂腕中寂しい夜が终わるまでここにいたいよ直到寂寞的夜结束之前都想呆在这里猫になりたい 言叶ははかない想要变成猫 话语是如此虚幻消えないようにキズつけてあげるよ所以要让你永不忘记地话语刺伤你目を闭じて浮かべた密やかな逃げ场所は闭上眼睛浮现出的秘密的避难所シチリアの浜辺の絵ハガキとよく似てた就像是西西里岛海边的明信片砂ぼこりにまみれて歩く 街は季节を嫌ってる走在满是沙子的海滩上 街道似乎讨厌了季节つくられた安らぎを舍てて丢弃虚伪的祥和吧猫になりたい 君の腕の中想要变成猫 在你的臂腕中寂しい夜が终わるまでここにいたいよ直到寂寞的夜结束之前都想呆在这里猫になりたい 言叶ははかない想要变成猫 话语是如此的虚幻消えないようにキズつけてあげるよ扩展资料:天马座的幻想是日本乐队スピッツ (SPITZ)于2003年所创作并演出的歌,收录于专辑『スピッツ』当中,该专辑共包好了8首歌曲。成军于1987年,乐队成员为:草野正宗、三轮彻也、田村明浩、崎山龙男,其中灵魂人物为主唱草野マサムネ,队长是田村明浩。让 Spitz 在 1995年一曲成名的是《Robinson》,曾占据公信榜 36 周,创造了单曲销量 162 万张的记录。
2023-07-17 11:35:351

请问“9am-5pm CST”是北京时间几点到几点,谢谢

CS可以指China standard time!北京时间上午9点—下午5点!
2023-07-17 11:35:373

lil什么意思?

lil指Lil"B。Lil"B ,日本女子二人组合,于2007年结成。由主唱 MIE和Rap AILA二人组成。名字的由来是Little简写LIL和Betray的B组成的。2008年6月18日发行首张单曲。曾凭借一曲“キミに歌ったラブソング”占领了日本配信榜的榜首宝座。相关信息:Lil"Bのデビューu30fbシングルは、TVアニメ「BLEACH」のエンディングテーマ! 恋爱の嬉しさ楽しさ切なさ、女の子の気持ちを素直に缀った歌词、サビのフレーズが病みつきに! スカにラップをのせたPOPで軽快な楽曲!这是日本人气动漫《死神BLEACH》TV版使用的最新ED,由一个新组合Lil"B来演唱。这个组合由两个女生组成——MIE和AILA。第一支单曲就成为《死神BLEACH》的片尾曲,相信会为她们积累一定人气。同名主打《オレンジ》是一首快节奏的歌,有点舞曲的味道,再加上点RAP(公司给她们的定位是:RAP IS COMING!),还是很有感觉的。
2023-07-17 11:35:381

Ghost里那disk和partition的项有什么区别?

Ghost里那disk和partition的项区别为:性质不同、恢复数据不同、格式化不同。一、性质不同1、disk:disk属于硬盘方式,对整个硬盘进行操作,分区恢复时对所有的分区恢复数据。2、partition:partition属于分区方式,对单独分区进行操作,分区恢复时只在单独分区恢复数据。二、恢复数据不同1、disk:硬盘大小改变时,如果用Disk方式的话,软件会根据原硬盘分区数量与容量比例自动把新硬盘按相同数量与比例恢复数据。2、partition:硬盘大小改变时,如果用Partition方式的话,必须保证分区容量大于备份的数据容量,如果比备份的数据容量小无法恢复数据。三、格式化不同1、disk:disk的格式化是将整个硬盘的数据进行格式化。2、partition:partition的格式化是对硬盘的单独分区的数据进行格式化,不影响其他分区的数据内容。
2023-07-17 11:35:421

魔戒_4种子下载地址有么?跪谢

魔戒_4种子下载地址:种子链接在此,有问题追问
2023-07-17 11:35:421

美国威斯康星麦迪逊分校

牛校。。。佩服,眼馋
2023-07-17 11:35:485

求 Spitz 《时间旅行》的罗马音译

街の外れの旧いやかたが君の家machi no hazure no furu iya kata ga kimi no ie日の暮れる顷呼び铃押したhi no kure ru koro yobirin oshi ta暗い廊下で君は无言の手招きさkura i rouka de kimi wa mugon no temaneki saサフラン色のドアを开けたよsafuran iro no doa wo a ke ta yoスフィンクスが眠る砂漠に君は立ちsufuinkusu ga nemuru sabaku ni kimi wa tachiかげんの月に照らされてたよkagen no tsuki ni terasa re te ta yo北极星の真下に尖がるピラミッドhokkyokusei no mashita ni togaru piramiddo光の船を君はさすhikari no fune wo kimi wa sasu时间旅行のツァーはいかが いかがなもの?jikan ryokou no tsua wa ika ga ikaga na monoクレオパトラの衣裳の君がkureopatora no ishou no kimi ga时间旅行のツァーはいかが いかがなもの?jikan ryokou no tsua wa ika ga ikaga na monoそうささやいた ああ梦の中 ああ梦の中sou sasayai ta aa yume no naka aa yume no naka黒い自动车すれ违いざまマシンガンkuroi jidousha surechigai zama mashin ganニューヨークではお祭りさわぎnyuyoku de wa o matsuri sawagi旧いラジオが奏でだすのはチャールストンfurui rajio ga kanade dasu no wa cha ru su tonFBIもタップu2022ダンスFBI mo tappu dansu时间旅行のツァーはいかが いかがなもの?jikan ryokou no tsua wa ika ga ikaga na monoハリウッドu2022クイーンまがいの君がhariuddo kuin magai no kimi ga时间旅行のツァーはいかが いかがなもの?jikan ryokou no tsua wa ika ga ikaga na mono甘いといきさ ああ梦の中 ああ梦の中amai to iki sa aa yume no naka aa yume no naka最後の部屋は星降りそそぐ时の果てsaigo no heya wa hoshi furisosogu toki no hate几千万の船が旅立つiku sen man no funa ga tabidatsu住めなくなった青い地球は窓の外sume naku natta aoi chikyuu wa mado no sotoやがて小さな点に消えたよyagate chiisana ten ni kie ta yo时间旅行のツァーはいかが いかがなもの?jikan ryokou no tsua wa ika ga ikaga na mono突然梦がそこで途切れたtotsuzen yume ga soko de togire ta时间旅行のツァーはいかが いかがなもの?jikan ryokou no tsua wa ika ga ikaga na monoここは东京 君の手の中 君の手の中koko wa toukyou kimi no te no naka kimi no te no naka时间旅行のツァーはいかが?jikan ryokou no tsua wa ika ga
2023-07-17 11:35:281

乘坐出租车用英文怎么说?

take a taxi.I don"t want to take a taxi. It"s expensive.我不想坐出租汽车,太贵了。We have little time, so we should take a taxi instead of waiting for the bus.我们没有什么时间了,还是叫一辆出租车,别等公共汽车了。You had better take a taxi or you will be late.你还是坐计程车走吧,否则你要迟到了。You need to take a taxi.你需要乘出租车。
2023-07-17 11:35:273

求SPITZ的《空も飞べるはず》的日文歌词

スピッツ 空も飞べるはず 作词者名 草野正宗 作曲者名 草野正宗 幼い微热を下げられないまま 神様の影を恐れて隠したナイフが似合わない仆を おどけた歌でなぐさめた色褪せながら ひび割れながら 辉くすべを求めて君と出会った奇迹が この胸にあふれてるきっと今は自由に空も飞べるはず梦を濡らした涙が 海原へ流れたらずっとそばで笑っていてほしい切り札にしてた见えすいた嘘は 満月の夜にやぶいたはかなく揺れる 髪のにおいで 深い眠りから覚めて君と出会った奇迹が この胸にあふれてるきっと今は自由に空も飞べるはずゴミできらめく世界が 仆たちを拒んでもずっとそばで笑っていてほしい君と出会った奇迹が この胸にあふれてるきっと今は自由に空も飞べるはず梦を濡らした涙が 海原へ流れたらずっとそばで笑っていてほしい
2023-07-17 11:35:201

智能建筑名词解释

智能建筑是计算机技术、电子技术、自动化技术和现代通信技术飞速发展,并与建筑技术有机结合,在建筑领域成功应用的产物。政策背景:2017年5月4日住房和城乡建设部印发《建筑业发展“十三五”规划》;住房城乡建设部发布公告,批准《建筑智能化系统运行维护技术规范》为行业标准,自2017年10月1日起实施。2020年7月3日,住房和城乡建设部联合国家发展和改革委员会、科学技术部、工业和信息化部、人力资源和社会保障部、交通运输部、水利部等十三个部门联合印发《关于推动智能建造与建筑工业化协同发展的指导意见》。构成:智能化建筑的系统组成和基本功能主要由三大部分构成,即楼宇自动化(又称建筑设备自动化,BA)、通信自动化(CA)和办公自动化(OA),这3个自动化通常称为“3A”。它们是智能化建筑中最主要的系统组成,且是必须具备的基本功能。基本概况:1、国际定义通过将建筑物的结构,系统,服务和管理四项基本要求以及他们的内在关系进行优化,来提供一种投资合理,具有高效,舒适和便利环境的建筑物2、国内标准修订版的国家标准《智能建筑设计标准》GB/T50314-2006)对智能建筑定义为“以建筑物为平台,兼备信息设施系统、信息化应用系统、建筑设备管理系统、公共安全系统等,集结构、系统、服务、管理及其优化组合为一体。原国家标准《智能建筑设计标准》(GB/T50314-2000)对智能建筑定义为“以建筑为平台,兼备建筑自动化设备BA、办公自动化OA及通信网络系统CA,集结构、系统、服务、管理及它们之间的最优化组合,向人们提供一个安全、高效、舒适、便利的建筑环境”。3、投资占比据统计,2012年智能建筑的投资约占建筑总投资的5%-8%,有的可达10%,主要包括住宅小区智能化系统投资、公共建筑智能化系统投资两大块。2012年,智能建筑占新建建筑的比例,美国为70%,日本为60%,中国不到40%,按2012年860亿元计算,未来数年内即使没有增长,2012-2020年8年内的市场规模也将达1万亿元。
2023-07-17 11:35:151

Lil是什么意思?

名字而已啦~(≥▽≤)/~啦啦啦
2023-07-17 11:35:1312

Spitz的《仲良し》 歌词

歌曲名:仲良し歌手:Spitz专辑:运命の人仲良し「Honey And Clover」插曲作词者名 草野正宗作曲者名 草野正宗唱 スピッツ制作 绯茶子殿下いつも仲良しでいいよねって言われてでもどこかブルーになってたあれは恋だった何度も口の中つぶやいてみたかすかなイメージ だけを追い求めてた时はこぼれていくよちゃちな梦の世界もすぐに広がっていくよ君は色褪せぬまま悪ふざけで飞べたのさ気のせいだと悟らずにいられたならサンダル履きの足指に见とれた小さな花咲かせたあれは恋だった时はこぼれていくよちゃちな梦の世界もすぐに広がっていくよ君は色褪せぬまま雨上がりの切れ间から差し込む阳の光たち街を洗ういつも仲良しでいいよねって言われてでもどこかブルーになってたあれは恋だった-END-http://music.baidu.com/song/56528081
2023-07-17 11:35:131

上出租车/下出租车 用英语怎么写

get on a taxiget off a taxi
2023-07-17 11:35:115

有哪些歌曲是2022年最火的歌曲?

回顾2022年,我单曲循环听得比较多的一首歌应该还是雷佳所演唱的《人世间》这首歌了,之所以这首歌能够被我所喜欢,并且不断的单曲循环,并不仅仅只是因为这首歌优美的旋律还是在于这首歌带给了我以下的情感。一、2018年“音乐裁缝”李袁杰的《离人愁》,2019年旋律风骚的《芒种》,2020年火爆抖音、快手的《旧梦一场》,2021年横扫夏季的《热爱105°C的你》,不玩短视频的人也很难不“有所耳闻”。二、听《野狼DISCO》时,你不再是平凡青年,而是闪耀灯球下的霹雳舞王孙红雷。听《漠河舞厅》时,你虽然单身但却经历了一次凄美的爱情代偿。听《大风吹》时,你是纵横四海的港风,身边有一堆可以为你卖命的马仔。但作为一个刚刚走过艰难的2022的成年人,再去嘶吼“战吗,战啊,以孤高的梦”,总归是自己也有点不信的。三、不管是从词曲来听,还是从这首歌的传达的讯息来说,都非常喜欢这首歌,每当听到《稻香》的时候,都在提醒着自己“知足者常乐”。四、《起风了》这一路上走走停停,顺着少年漂流的痕迹,迈出车站的前一刻,竟有些犹豫(歌词)。当来到一个陌生的环境的时候,每个人都有迷茫痛苦和犹豫不决!“有些人走出来了,有些人却在原地踏步!”这首词写的“很美好、很青春、很动听,给人许多思考的空间!让人联想到故乡的小溪,故乡的车站,故乡吹来的风!”旋律加上演唱,更是把这首歌曲再次升华了!青春有遗憾也有快乐,有奋不顾身的打拼;也有那不切实际的幻想;也许这就是青春应该有的痕迹;也许这才是青春该有的样子!五、《晴》汪苏泷的一首歌,歌名是晴但一整首歌都在下雨。对于我而言这首歌听出的意思就是这样的:“你就像天气一样,有时晴,有时雨,让我琢磨不透。而我四季都不敢变,始终是晴天。”听这首歌的时候心情好难过现在听多了缺感觉好甜蜜,希望我们都能遇见对的人,都珍惜心里的那个人。
2023-07-17 11:35:103