在我的xml文件中,我有一个线性布局,其中包含用于显示图像的ViewPager和另一个包含用于选择图像的上一个和下一个按钮的线性布局.我的xml如下所示:
<?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.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal" >
<Button
android:id="@+id/goto_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="first" >
</Button>
<Button
android:id="@+id/goto_last"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="last" >
</Button>
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我的问题是ViewPager正在全屏显示,并且带有前一个下一个按钮的Linearlayout没有显示,因为没有空间来绘制此LinearLayout.
我正在使用Fragments来为ViewPager填充视图.进入ViewPager的片段视图的xml文件是:
<ImageView
android:id="@+id/ItemImage"
android:layout_width="320dp"
android:layout_height="180dp" />
<TextView
android:id="@+id/ItemText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|bottom"
android:layout_marginBottom="5dp"
android:textColor="#ffffffff"
android:textStyle="bold" />
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)
渲染后我得到的输出是这样的:
1.image(覆盖45%的屏幕高度)2.
空白区域(覆盖45%的屏幕高度)
3.Textview(覆盖10%屏幕高度的其余部分)
我想要的输出是:
1.image(覆盖45%的屏幕高度)
2.Textview(覆盖10%的屏幕高度)
3.LinarLayout for Buttons(覆盖45%屏幕高度的其余部分)
我现在可以将CursorAdapter绑定到ListView.并且ListView可以在修改数据库时自动更新.
对于数据库中的数据行,字段为"类型",它们可以是"每日","每周","每月",.etc.我想在ExpandableListView中显示行,以便每种类型的行可以组合在一起.我还希望ExpandableListView可以在修改数据库时自动更新.如何将CursorAdapter和ExpandableListView组合在一起?
我google了很多,但找不到解决方案,谢谢你的关注!
我一直在研究相机应用程序,我希望它是当我按下"捕获"按钮它拍照并将其保存到SD卡,以便可以在库中查看.
然而,目前它无法保存我想要的方式.目前,当我按下捕获时,它会拍照,但是在完全重新启动手机后,图片才显示在图库中.
这个问题一直困扰着我好几个星期,我大多数都遵循了android给出的教程.
这是我处理图片的主类的代码.
private PictureCallback mPicture = new PictureCallback()
{
@Override
public void onPictureTaken(byte[] data, Camera camera)
{
File pictureFile = getOutputMediaFile(MEDIA_TYPE_IMAGE);
if (pictureFile == null){
Log.d(TAG, "Error creating media file, check storage permissions: ");
return;
}
try {
FileOutputStream fos = new FileOutputStream(pictureFile);
fos.write(data);
fos.close();
} catch (FileNotFoundException e) {
// Log.d(TAG, "File not found: " + e.getMessage());
} catch (IOException e) {
// Log.d(TAG, "Error accessing file: " + e.getMessage());
}
}
};
private static File getOutputMediaFile(int …Run Code Online (Sandbox Code Playgroud) 我有一个使用SlidingMenu的父类.扩展父类的子项显示主页图标上的滑动菜单.
如何禁用子类中的滑动菜单?
代码父类:
public class BCFragmentActivity extends SlidingFragmentActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
setSlidingActionBarEnabled(true);
setBehindContentView(R.layout.slide_menu);
getSlidingMenu().setShadowWidthRes(R.dimen.shadow_width);
getSlidingMenu().setShadowDrawable(R.drawable.shadow);
getSlidingMenu().setBehindOffsetRes(R.dimen.actionbar_home_width);
getSlidingMenu().setBehindScrollScale(0.25f);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
toggle();
return true;
}
return super.onOptionsItemSelected(item);
}
}
Run Code Online (Sandbox Code Playgroud)
儿童代码:
public class SettingsPagerActivity extends BCFragmentActivity {
private ActionBar actionBar;
private ViewPager settingsPager;
private Tab profilesTab;
private Tab accountsTab;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings_pager);
actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
settingsPager = (ViewPager) findViewById(R.id.settingsPage);
settingsPager.setOnPageChangeListener(pageChangeListener);
FragmentManager …Run Code Online (Sandbox Code Playgroud) 我在我的应用程序中出现问题..使用XML文件我得到地理位置来绘制两个位置之间的路径..但它只显示我的路线,如果距离小于300公里..否则它没有绘制完整的路径..
任何解决方案,用于将xml文件分成块或任何替代方案.因为它给出的方向即使对于长距离也是完美的......那么问题是什么?我不明白..
请帮忙..
编辑:我发现KML文件中存在问题.如果有一个很长的距离,它提供两个线串标签,每个都有坐标列表,全路径分为几个部分.如下
<GeometryCollection>
<LineString>
<coordinates>70.799640,22.283370,... </coordinates>
</LineString>
<LineString>
<coordinates>73.005940,21.536300,....</coordinates>
</LineString>
</GeometryCollection>
这就是为什么它只会在地图上绘制一个Route的后半部分..所以..任何人都知道如何解决这个问题..
编辑: -
public class DrivingDirectionsGoogleKML extends DrivingDirections
{
@Override
protected void startDrivingTo (GeoPoint startPoint, GeoPoint endPoint, Mode mode, IDirectionsListener listener)
{
new LoadDirectionsTask(startPoint, endPoint).execute(mode);
}
private class LoadDirectionsTask extends AsyncTask<Mode, Void, RouteImpl>
{
private static final String BASE_URL = "http://maps.google.com/maps?f=d&hl=en";
private static final String ELEMENT_PLACEMARK = "Placemark";
private static final String ELEMENT_NAME = "name";
private static final String ELEMENT_DESC = "description";
private static …Run Code Online (Sandbox Code Playgroud) 我有一个问题,当用户点击checkbox里面的时候listView,textView不会向它收费Paint.STRIKE_THRU_TEXT_FLAG)。当用户单击 时checkbox,罢工线将显示在textView.
public void bindView(View row, Context context, Cursor c) {
// TODO Auto-generated method stub
listName = (TextView) row.findViewById(R.id.produtName);
listCheck = (CheckBox) row.findViewById(R.id.check);
Item tag = (Item) listCheck.getTag();
String pos = helper.getProductId(c);
Log.i(CN, "getView: no tag on " + pos);
tag = new Item();
tag.id = Integer.parseInt(pos);
listCheck.setTag(tag);
listCheck.setChecked(false);
String status = helper.getProductStatusT(c);
if (Integer.parseInt(status) == 0) {
listCheck.setChecked(true);
listName.setPaintFlags(listName.getPaintFlags()
| Paint.STRIKE_THRU_TEXT_FLAG);
} else {
listCheck.setChecked(false);
listName.setPaintFlags(listName.getPaintFlags() …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种使用和通过互联网流式传输预先录制的MP3或WAV文件的方法。现在的主要绊脚石是如何从文件及其中获取a ,以便可以像通过麦克风或摄像机发出的流一样传递它。SIPRTPstreamsynchronizeRTP
我想使用默认TICK声音,但我不知道如何或在何处放置此代码
view.playSoundEffect(SoundEffectConstants.CLICK);
Run Code Online (Sandbox Code Playgroud)
我在另一篇文章中找到了这段代码.
这是我的代码:
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final MediaPlayer mp = MediaPlayer.create(this, R.raw.blah);
Button Button01 = (Button)this.findViewById(R.id.Button01);
Button01.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
mp.start();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public void onClick(View v){}
public void disclaimerBTN (View v){
Toast.makeText(this, "FAILED: The remote object is " +
"not responding …Run Code Online (Sandbox Code Playgroud) 我设置了onFling()Gesture 的事件ScrollView,但它不适用于ScrollView,
package com.doubletap;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.GestureDetector;
import android.view.GestureDetector.OnDoubleTapListener;
import android.view.GestureDetector.OnGestureListener;
import android.view.MotionEvent;
import android.widget.TextView;
public class DoubleTapActivity extends Activity implements OnGestureListener
{
private GestureDetector gd;
private TextView tvTap;
String TAG = getClass().getSimpleName();
private static final int SWIPE_MIN_DISTANCE = 120;
private static final int SWIPE_MAX_OFF_PATH = 250;
private static final int SWIPE_THRESHOLD_VELOCITY = 200;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tvTap = (TextView)findViewById(R.id.tvTap);
gd = new GestureDetector(this);
gd.setOnDoubleTapListener(new OnDoubleTapListener() …Run Code Online (Sandbox Code Playgroud) 我在每个活动中都使用这个:
@Override
public void onStart() {
super.onStart();
EasyTracker.getInstance().activityStart(this);
}
@Override
public void onStop() {
super.onStop();
EasyTracker.getInstance().activityStop(this);
}
Run Code Online (Sandbox Code Playgroud)
并通过这个文档
我发现:
使用EasyTracker
要使用EasyTracker
自动跟踪应用程序中所有未捕获的异常,请将此行添加到您的analytics.xml文件中:
<bool name="ga_reportUncaughtExceptions">true</bool>
Run Code Online (Sandbox Code Playgroud)
使用自动异常跟踪跟踪异常后,EasyTracker会将异常传递给Thread的默认异常处理程序.
使用自动异常跟踪时,请注意以下事项:
但是当我收到UncaughtException并且应用程序崩溃时,在Google Analytics描述中,它只显示:
An error occured while executing doInBackground()
Run Code Online (Sandbox Code Playgroud)
不是上面提到的堆栈跟踪.什么东西需要添加?
谢谢
我创建以下代码:
mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position,
long id) {
for (int i = 0; i < mListView.getCount(); i++) {
View callLogView = mListView.getChildAt(i);
mRelativeLayout = (LinearLayout)callLogView.findViewById(R.id.myShow);
if(i == position){
if(mRelativeLayout.getVisibility() == View.GONE){
mRelativeLayout.setVisibility(View.VISIBLE);
}
else{
mRelativeLayout.setVisibility(View.GONE);
}
}else{
mRelativeLayout.setVisibility(View.GONE);
}
}
}
});
Run Code Online (Sandbox Code Playgroud)
我想实现一个函数,比如当我点击一个项目时Listview,它会显示一个视图,而Listview的其他项目将被隐藏.但是mListView.getChildAt(i)超过后会有空指针mListView.getChildCount().
怎么解决这个?提前致谢!
我想对用户输入内部做出反应,EditText所以我使用了该addTextChangedListener方法.当用户键入单个字符时,代码onTextChanged正在运行,一切正常.因此,例如,如果用户键入"a",onTextChanged则将开始运行.
但是如果用户键入另一个字符,例如b,则不会调用onTextChanged.
(EditText中的文本现在应为"ab")
代码:
et = (EditText)findViewById(R.id.edittextsearch);
et.addTextChangedListener(new TextWatcher()
{
public void afterTextChanged(Editable s){}
public void beforeTextChanged(CharSequence s, int start, int count,int after){}
public void onTextChanged(CharSequence s, int start, int before,int count)
{
int i = 0;
textlength=et.getText().length();
arr_sort.clear();
for(i=0;i<3;i++)
{
if(textlength<=your_array_contents[i].length())
{
if(et.getText().toString().equalsIgnoreCase((String) your_array_contents[i].subSequence(0, textlength)))
{
arr_sort.add(your_array_contents[i]);
}
}
}
lv.setAdapter(new ArrayAdapter<String>(GroupsActivity.this,
android.R.layout.simple_list_item_multiple_choice, arr_sort));
}
});
Run Code Online (Sandbox Code Playgroud)
感谢帮助!
我正在与手机联系人合作.当我点击按钮并获取所有联系信息,如姓名,电子邮件和电话号码时,我想从联系人列表中选择联系人.我只是收到了电子邮件和联系人姓名,但无法获取电话号码.我的代码在下面给出.
Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,Contacts.CONTENT_URI);
startActivityForResult(contactPickerIntent, PICK_CONTACT);
}
});
}
@Override
public void onActivityResult(int reqCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
switch (reqCode)
{
case PICK_CONTACT:
Cursor cursor = null;
String email = "", name = "";
try {
Uri result = data.getData();
//Log.v(DEBUG_TAG, "Got a contact result: " + result.toString());
// get the contact id from the Uri
String id = result.getLastPathSegment();
// query for everything email
cursor = getContentResolver().query(Email.CONTENT_URI, null, Email.CONTACT_ID …Run Code Online (Sandbox Code Playgroud) android ×13
android-ui ×1
audio ×1
camera ×1
contacts ×1
easytracker ×1
email ×1
gesture ×1
listview ×1
phone-number ×1
routes ×1
rtp ×1
scrollview ×1
sliding ×1
stream ×1
xml ×1