larsa

توسعه دهنده اندروید
  • تعداد ارسال ها

    33
  • تاریخ عضویت

  • آخرین بازدید

اعتبار در انجمن

0 Neutral

درباره larsa

  • درجه
    Advanced Member
  1. من ی صفحه اکتیویتی دارم که میخوام تمام ویجت هام دور یک نیم دایره بچرخن و بعد در جایی که چرخش تموم میشه بمونن ویجت ها به صورت نیم دایره دور نیم دایره ثابت قرار بگیرن نیم دایره رو ایجاد کردم و یکی از ویجت ها هم به همون شکلی که نیاز دارم در برنامه قرار میگیره این کلاس انیمیشنم هست public class MyAnimation extends Animation { private List view; private float cx, cy; // center x,y position of circular path private float prevX, prevY; // previous x,y position of image during animation private float r; // radius of circle private float prevDx, prevDy; /** * @param view - View that will be animated * @param r - radius of circular path */ public MyAnimation(List view, float r){ this.view = view; this.r = r; } @Override public boolean willChangeBounds() { return true; } @Override public void initialize(int width, int height, int parentWidth, int parentHeight) { cx=0; cy=0; // calculate position of image center /* int cxImage = width / 2; int cyImage = height / 2; cx = view.getLeft() + cxImage; cy = view.getTop() + cyImage;*/ // set previous position to center prevX = cx; prevY = cy; } @Override protected void applyTransformation(float interpolatedTime, Transformation t) { if(interpolatedTime == 0){ t.getMatrix().setTranslate(prevDx, prevDy); return; } int a=330; for (int i=1;i<3;i++) { float angleDeg = (interpolatedTime * a + 90) % 360; float angleRad = (float) Math.toRadians(angleDeg); // r = radius, cx and cy = center point, a = angle (radians) float x = (float) (cx + r * Math.cos(angleRad)); float y = (float) (cy + r * Math.sin(angleRad)); float dx = prevX - x; float dy = prevY - y; prevX = x; prevY = y; prevDx = dx; prevDy = dy; t.getMatrix().setTranslate(dx,dy); a=a-60; } } } و اینم کلاس اکتیویتی public class MainActivity extends AppCompatActivity { List views; FloatingActionButton ProductButton, AboutButton; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ProductButton = (FloatingActionButton) findViewById(R.id.ProductButton); AboutButton = (FloatingActionButton) findViewById(R.id.AboutButton); views=new ArrayList(); views.add(ProductButton); views.add(AboutButton); for (int i=1; views.size()<4;i++) { Animation anim = new MyAnimation((List views.get(i), height * 2 / 5); anim.setDuration(5000); anim.setFillAfter(true); views.get(i).startAnimation(anim); } } } و اخری هم xml <?xml version="1.0" encoding="utf-8"?> xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" tools:context="com.example.hajar.floatactionbutton.MainActivity"> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginRight="0dp" android:background="#00FFFFFF" android:layout_centerVertical="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="false" android:id="@+id/Semicircular" /> android:id="@+id/image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/ic_launcher" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> android:id="@+id/ProductButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_centerVertical="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" /> android:id="@+id/AboutButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_centerVertical="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" /> برنامه ام روی حلقه خطا داره ممنون میشم بهم بگید باید چیکار کنم که هر دوی Buttonهام روی انیمیشن حرکت کنند
  2. برنامه رو که دیباگ میکنم fm رو مقدارش null میگیره برا همین توی خط بعدیش خطا دارم به جای getFragmentManager هم getChildFragmentManager هم قرار دادم ولی مشکلم حل نشد xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.hajar.earthquake.MapFragment" android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment">
  3. سلام من میخوام کد زیر رو در فرگمنت استفاده کنم ممنون میشم بهم بگید باید چیکار کنم SupportMapFragment fm =(SupportMapFragment) getFragmentManager().findFragmentById(R.id.map); map = fm.getMap(); که map ام از نوع گوگل مپ private GoogleMap map; به این صورت که در فرگمنت استفاده میکنم به خط map = fm.getMap(); خطا میگیره
  4. من میخوام مسیریابی رو روی اندروید انجام بدم از این api استفاده میکنم Google Maps Android API و میتونم نقشه رو نمایش بدم برای مسیریابی باید چیکار کنم تو آموزشا دیدم که باید از api زیر استفاده کنم Google Maps Directions API اما بازم جواب نمیگیرم ممنون میشم راهنماییم کنید باید چیکار کنم خیلی کمک لازمم
  5. سلام من یک اکتیویتی Login دارم که میخوام اسم خیابان رو که دریافت کردم برام ذخیره کنه و اگه این اسم با اسم خیابانم تو پایگاه برابر بود برام دستو select رو اجرا کنه برای ذخیره اسم خیابان در اکتیویتی login از SharedPreferences استفاده کردم به این صورت shared = getSharedPreferences("Prefs", MODE_PRIVATE); editor = shared.edit(); editor.putString("StreetName", editTextStreetName.getText().toString()); editor.commit(); و اونو بدین صورت در فرگمنت فراخوانی کردم و برای اطمینان از ذخیره شدن درستش توی تکست ویو نشون دارم که مشکلی نداشت shared = getActivity().getSharedPreferences("Prefs", Context.MODE_PRIVATE); name=shared.getString("StreetName",""); حالا میخوام ی دستور مثل if بنویسم که در صورت درست بودن شرط دستور select رو اجرا کنه کد زیر رو براش زدم اما نتیجه ای رو برام بر نمیگردونه و اروری هم نداره name متغیری که از اکتیویتی login گرفتم و Name_stree متغیری که از پایگاه میخوام بخونمش ممنون میشم راهنماییم کنید که باید چیکار کنم if (name.equals(routing.getName_stree())) { listViewStreet = (ListView) rootView.findViewById(R.id.lst_data); this.listViewStreet.setAdapter(new RoutingAdapter(getActivity(), new Routing().getList())); }
  6. ممنون میشم ی لینک بهم معرفی کنید تا ازش استفاده کنم
  7. من ابجکت EditText رو در یک اکتیویتی دارم و میخوام مقدار ورودی این ابجکت رو بگیرم و در یک فرگمنت یا کلاس دیگه ای استفاده کنم برای ذخیره این مقدار از این روش استفاده کردم EditText et = (EditText) findViewById(R.id.editText); String street = editTextStreetName.getText().toString(); به این صورت مقدارش رو در متغیر street ذخیره کردم حالا برای استفاده در یک فرگمنت دیگه به مشکل برخوردم ممنون میشم راهنماییم کنید
  8. سلام من موقع اجرای برنامه ام با خطای زیر روبرو میشم اطلاعات پایگاهی که ازش استفاده میکنم رو چک کردم و مقدار null نداشتم ممنون میشم راهنماییم کنید 04-04 02:38:18.640 13477-13477/com.hajar.earthquake E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.hajar.earthquake, PID: 13477 java.lang.NullPointerException at com.hajar.earthquake.Model.Routing.getList(Routing.java:38) at com.hajar.earthquake.Fragment.InfoFragment.onCreateView(InfoFragment.java:36) at android.support.v4.app.Fragment.performCreateView(Fragment.java:1786) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:947) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1126) at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:739) at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1489) at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:486) at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:141) at android.support.v4.view.ViewPager.populate(ViewPager.java:1073) at android.support.v4.view.ViewPager.populate(ViewPager.java:919) at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1441) at android.view.View.measure(View.java:16497) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125) at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) at android.view.View.measure(View.java:16497) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125) at android.support.v7.internal.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:453) at android.view.View.measure(View.java:16497) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125) at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) at android.view.View.measure(View.java:16497) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404) at android.widget.LinearLayout.measureVertical(LinearLayout.java:695) at android.widget.LinearLayout.onMeasure(LinearLayout.java:588) at android.view.View.measure(View.java:16497) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125) at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2291) at android.view.View.measure(View.java:16497) at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:1912) at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1109) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1291) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:996) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5600) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761) at android.view.Choreographer.doCallbacks(Choreographer.java:574) at android.view.Choreographer.doFrame(Choreographer.java:544) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747) at android.os.Handler.handleCallback(Handler.java:733) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5001) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) at dalvik.system.NativeStart.main(Native Method)
  9. سلام من ی مشکلی دارم میخوام تو دستور select از متغیر استفاده کنم چه جوری میتونم این کارو انجام بدم؟ ResultSet resultSet = db.select("SELECT * FROM pgr_dijkstra('\n" + " SELECT gid AS id,\n" + " source::integer,\n" + " target::integer,\n" + " costvul::double precision AS cost\n" + " FROM streetaxe',\n" + "49,41,false, false)a LEFT JOIN streetaxe b ON (a.id2 = b.gid) "); میخوام به جای 41 و 49 از متغیر استفاده کنم که متغیر هام اطلاعاتش از پایگاه پر میشه ممنون میشم راهنماییم کنید
  10. سلام من ی برنامه دارم که میخوام اطلاعات رو از پایگاه بخونم و در یک فرگمنت در لیست ویو ان را نمایش بدم خواندن اطلاعات رو میتونم انجام بدم و نتیجه در یک لیست ویو توی اکتیویتی نشون میده اما نمیتونم اطلاعات رو در یک لیست ویو در فرگمنت نشون بدم کلاس Adapter public class RoutingAdapter extends ArrayAdapter { private Context context; private ArrayList list; public RoutingAdapter(Context context, ArrayList list) { super(context,0,list); this.context=context; this.list=list; } @Override public View getView(int position, View convertView, ViewGroup parent) { final Routing item=this.list.get(position); convertView= LayoutInflater.from(this.context).inflate(R.layout.item_list,null); final View layout=convertView; TextView textView=(TextView)convertView.findViewById(R.id.textstreetname); textView.setText(item.getName_stree()); TextView textViewEmail=(TextView)convertView.findViewById(R.id.textsource); textViewEmail.setText(item.getSource()); TextView textViewTelefone=(TextView)convertView.findViewById(R.id.texttarget); textViewTelefone.setText(item.getTarget()); return convertView; } } [align=left]یک مدل Routing دارم[/align] [align=left] [/align] [align=left] public class Routing { Login login; LoginActivity loginActivity; int gid; String name_stree; String geom; int costvul; int source; int target; public Routing() { super(); } public ArrayList getList(){ DB db = new DB(); ArrayList list=new ArrayList<>(); try { ResultSet resultSet = db.select("SELECT * FROM streetaxe "); if (resultSet != null) { while (resultSet.next()) { Routing obj = new Routing(); obj.setGid(resultSet.getInt("gid")); obj.setSource(resultSet.getInt("source")); obj.setTarget(resultSet.getInt("target")); obj.setName_stree(resultSet.getNString("name_stree")); list.add(obj); obj = null; } } }catch (Exception e){} return list; } public int getGid() { return gid; } public void setGid(int gid) { this.gid = gid; } public String getName_stree() { return name_stree; } public void setName_stree(String name_stree) { this.name_stree = name_stree; } public String getGeom() { return geom; } public void setGeom(String geom) { this.geom = geom; } public int getCostvul() { return costvul; } public void setCostvul(int costvul) { this.costvul = costvul; } public int getSource() { return source; } public void setSource(int source) { this.source = source; } public int getTarget() { return target; } public void setTarget(int target) { this.target = target; } } من کدی رو که الان میذارم رو وقتی داخل اکتیویتی میذارم جواب میده اما تو فرگمنت نه ممنون میشم بگید باید چیکار کنم[/align] [align=left] listViewStreet = (ListView) rootView.findViewById(R.id.lst_data); this.listViewStreet.setAdapter(new RoutingAdapter(getActivity(), new Routing().getList())); [/align]
  11. سلام وقتتون بخیر من برای موقعیت یابی از کلاس GPSTracker استفاده میکنم ولی بهم مختصات رو نشون نمیده و موقعیت 0,0 رو فقط برمیگردونه ممنون میشم راهنماییم کنید باید چه جوری مشکلم رو برطرف کنم import android.app.AlertDialog; import android.app.Service; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.os.IBinder; import android.provider.Settings; import android.util.Log; public class GPSTracker extends Service implements LocationListener { private final Context mContext; // flag for GPS status boolean isGPSEnabled = false; // flag for network status boolean isNetworkEnabled = false; // flag for GPS status boolean canGetLocation = false; Location location; // location double latitude; // latitude double longitude; // longitude // The minimum distance to change Updates in meters private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters // The minimum time between updates in milliseconds private static final long MIN_TIME_BW_UPDATES = 1000 * 60 * 1; // 1 minute // Declaring a Location Manager protected LocationManager locationManager; //function sazande public GPSTracker(Context context) { this.mContext = context; getLocation(); } public Location getLocation() { try { locationManager = (LocationManager) mContext .getSystemService(LOCATION_SERVICE); // getting GPS status on or off isGPSEnabled = locationManager .isProviderEnabled(LocationManager.GPS_PROVIDER); // getting network status isNetworkEnabled = locationManager .isProviderEnabled(LocationManager.NETWORK_PROVIDER); if (!isGPSEnabled && !isNetworkEnabled ) { // no network provider is enabled } else { this.canGetLocation = true; // First get location from Network Provider if (isNetworkEnabled) { locationManager.requestLocationUpdates( LocationManager.NETWORK_PROVIDER, MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES, this); Log.d("Network", "Network"); if (locationManager != null) { location = locationManager .getLastKnownLocation(LocationManager.NETWORK_PROVIDER); if (location != null) { latitude = location.getLatitude(); longitude = location.getLongitude(); } } } // if GPS Enabled get lat/long using GPS Services if (isGPSEnabled) { if (location == null) { locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES, this); Log.d("GPS Enabled", "GPS Enabled"); if (locationManager != null) { location = locationManager .getLastKnownLocation(LocationManager.GPS_PROVIDER); if (location != null) { latitude = location.getLatitude(); longitude = location.getLongitude(); } } } } } } catch (Exception e) { e.printStackTrace(); } return location; } /** * Stop using GPS listener Calling this function will stop using GPS in your * app * */ public void stopUsingGPS() { if (locationManager != null) { locationManager.removeUpdates(GPSTracker.this); } } /** * Function to get latitude * */ public double getLatitude() { if (location != null) { latitude = location.getLatitude(); } // return latitude return latitude; } /** * Function to get longitude * */ public double getLongitude() { if (location != null) { longitude = location.getLongitude(); } // return longitude return longitude; } /** * Function to check GPS/wifi enabled * * @return boolean * */ public boolean canGetLocation() { return this.canGetLocation; } /** * Function to show settings alert dialog On pressing Settings button will * lauch Settings Options * */ public void showSettingsAlert() { AlertDialog.Builder alertDialog = new AlertDialog.Builder(mContext); // Setting Dialog Title alertDialog.setTitle("GPS is settings"); // Setting Dialog Message alertDialog .setMessage("GPS is not enabled. Do you want to go to settings menu?"); // On pressing Settings button alertDialog.setPositiveButton("Settings", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent( Settings.ACTION_LOCATION_SOURCE_SETTINGS); mContext.startActivity(intent); } }); // on pressing cancel button alertDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); // Showing Alert Message alertDialog.show(); } @Override public void onLocationChanged(Location location) { } @Override public void onProviderDisabled(String provider) { } @Override public void onProviderEnabled(String provider) { } @Override public void onStatusChanged(String provider, int status, Bundle extras) { } @Override public IBinder onBind(Intent arg0) { return null; } } [align=left]و فراخوانی تابع در اکتیویتی بدین صورت است[/align] [align=left] public class MainActivity extends ActionBarActivity { Button btnShowLocation; GPSTracker gps; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnShowLocation=(Button)findViewById(R.id.show_location); btnShowLocation.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { gps=new GPSTracker(MainActivity.this); if (gps.canGetLocation()){ double latitude=gps.getLatitude(); double longitude=gps.getLongitude(); Toast.makeText(getApplication(), "your Location is -\nlat: " + latitude + "\nLong: " + longitude, Toast.LENGTH_LONG).show(); } else{ gps.showSettingsAlert(); } } }); [/align]
  12. خیلی ممنون
  13. اگر متلب یا صفحه ای هم در این مورد معرفی کنید ممنون میشم با php همکار میکنم
  14. ممنون از راهنمایی هاتون