رفتن به مطلب

مهدی ایزدی

موسس و بنیان گذار
  • تعداد ارسال ها

    5,609
  • تاریخ عضویت

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

  • روز های برد

    212

پست ها ارسال شده توسط مهدی ایزدی

  1. عزیز تو میتونی از Touch استفاده کنی . آموزش Touch ( لمس ) توی سایت آموزش داشته شده به صورت کامل .

    میتونی یک عکس یا متن بزاری که لطفا برای ورود لمس کنید. مثل خیلی دیگه از برنامه ها که حتما همگی ما دیدیم.

    الان برم یک سر بیرون کار دارم . برگردم برات حتما همون سورسی که گفتم میزارم .

    ×××××××××××××××××××××××××

    توی کدهات: اونجا که تعریف کردی اگه st مساوی 10 شد بریم داخل Activity2 خط بعدش قبل از Else باید Timer.Enabled = False هم کنی !

    نکته بعدش هم دوباره تکرار میکنم : شما Initialize نکردی تایمر رو. نیازی به اون کد Timer.Interval = 1000 هم نداری.

    فقط به جای کد Interval باید این رو بزاری :

    Timer.Initialize("Timer",1000)

    تست نکردم ولی نیازی به تست هم نداره . همین کاری رو که گفتم شما انجام بده حل میشه مشکلت

  2. سلام و درود

    اگه این نکات رو رعایت کنید هیچ مشکلی پیش نمیاد:

    برای SetLeftAndRight همیشه از x استفاده کنید

    برای SetTopAndBottom همیشه از y استفاده کنید

    سعی کنید تا جایی که امکانش هست از dip استفاده نکنید و کلا از % استفاده کنید

    اگه این 3 نکته بالا رو ( مخصوصا اولی و دومی ) رعایت نشه بدون شک توی گوشی های متفاوت مکان قرارگیری اجزاء فرق میکنه.

    تاکید میکنم: با دقت تمام کدهاتون رو توجه کنید. به هیچ عنوان ، به هیچ عنوان برای SetLeftAndRight از y و برای SetTopAndBottom از x استفاده نکنید.

    تا حد امکان هم از dip استفاده نکنید و فقط از x% و y% استفاده کنید.

  3. سلام . هم کد سینا عزیز کاملا درسته و هم کد مهران عزیز

    البته سینا میتونست به جای تعیرف کردن TextChanged کد Sina = EditText1.Text رو توی همون Button1_Click هم قرار بده چون تا وقتی Button کلیک نشده Activity دوم نمایش داده نمیشه.

    روش های زیادی وجود داره که مهران و سینا دو تا از روش هارو برات توضیح دادن.

    من همین کد مهران رو دقیقا مطابق با پروژه شما نوشتم :

    توی Main :

    Sub Globals
    Private EditText1 As EditText
    End Sub
    
    Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("Layout1")
    End Sub
    
    Sub Button1_Click
    CallSubDelayed2(Share,"ShowText",EditText1.Text)
    End Sub

    توی Share :

    Sub Globals
    Private Label1 As Label
    End Sub
    
    Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("Layout2")
    End Sub
    
    Public Sub ShowText(text As String)
    Label1.Text = text
    End Sub
    Sub Button1_Click
    StartActivity(Main)
    End Sub

    دمو :

    [ATTACH=CONFIG]188[/ATTACH]

    سورس کد هم پیوست شد.

    پسورد: basic4android.org

    موفق باشی

    CallSubDelayed2 Example(basic4android.org).rar

  4. سلام

    اولا که باعث خوشحالی ماست که شما توسط این سایت دارید برنامه نویسی اندروید رو یاد میگیرید.

    دوست عزیز تا جایی که من متوجه شدم طبق این تصویر کوچیک شما Initialize رو انجام ندادید.

    زمانی که شما Initialize رو انجام بدید دیگه لازم نیست که مثل کد نویسی الانتون Interval رو به صورت جدا تعریف کنید.

    این کد رو با کد Interval اتون جایگذرین کنین مشکلتون کل میشه ان شاا...

    Timer.Initialize("Timer",1000)

    1000 همون Interval هست.

    راستی اینجا دیگه فورم نداریم . Activity داریم .یادت نره. اسم فورم رو به کار نبر اصلا ;)

    فردا یادم باشه یک نمونه جالب ترش رو توی بخش سورس کد ها براتون بزارم شاید به کارتون بیاد *DntKnow*

  5. سلام . در ادامه صحبت های دوستان این هم بگم که:

    تمام ابزارهای مربوط به اندروید ( api 14 ) توی بخش ابزارهای b4a هستند + آموزش نصبشون و راه اندازی به صورت متنی و ویدئویی.

    میتونید اندروید خودتون رو ارتقاء بدید.

    موفق باشید

  6. سلام صبح بخیر

    خب جواب شما :

    فرض کنید شما یک string دارید که شامل IP شما میشه که باهاش کانکت شدید.

    بیایید با IP فرضی کار کنیم خب ؟

    توی Sub Globals :

    Sub Globals
       Dim lines As String
    End Sub

    خب حالا IP فرضی رو تعریف میکنیم در Activty Create :

    Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("split")
    lines = "192.168.30.40"
    End Sub

    IP چهار قسمت داره دیگه !!! توی Sub Globals اینها رو هم تعریف کن :

    Dim aval As Int
       Dim dovom As Int
       Dim sevom As Int
       Dim chaharom As Int

    خب حالا می مونه قسمت شرطمون. واسه تمرین یک Button از Desginger اضافه کن و وارد رویداد کلیک اش بشو :

    Sub Button1_Click
    
    End Sub

    تمام کدهایی که زیر میزارم باید داخل کلیک قرار بگیرن:

    خب ما اول میاییم با یک Replace حروف های "." رو به "," تغییر میدیم :

    lines = lines.Replace(".",",")

    خب ؟

    بعدش بعدش میریم سراغ split که دیشب بهت گفتم. از طریق Regex کار میکنیم:

    Dim ip() As String = Regex.Split(",",lines)

    خب ؟

    حالا میریم سراغ جداسازی قسمت ها:

        aval = ip(0).Trim
       dovom = ip(1).Trim
       sevom = ip(2).Trim
       chaharom = ip(3).Trim

    خب کار ما تمومه / فقط حالا می مونه شرط هامون:

            If aval > 192 Then
           ToastMessageShow("قسمت اول رنج آی پی بزرگه",False)
           Return
           Else
           If dovom > 168 Then
           ToastMessageShow("قسمت دوم رنج آی پی بزرگه",False)
           Return
           Else
           If sevom > 30 Then
           ToastMessageShow("قسمت سوم رنج آی پی بزرگه",False)
           Return
           Else
           If chaharom > 40 Then
           ToastMessageShow("قسمت چهارم رنج آی پی بزرگه",False)
           Return
           Else
           ToastMessageShow("آفرین رنج آی پی درسته",False)
           End If
           End If
           End If
           End If

    تمام.

    سعی کنید این تالار رو به دوستاتون هم معرفی کنید.هنوز 1 ماه هم از راه اندازی سایت نگذشته.هرچقدر کاربران سایت بیشتر باشن و تالار فعال تر باشه اطلاعات علمی همگی بالاتر میره و ما هم

    با انگیزه بیشتری کار خودمون رو در کنار شما ادامه میدیم .

    به امید موفقیت همگی

  7. کاری نداره.

    میتونی یک database تعریف کنی چه از نوع db و چه txt و چه html و توش لیست IP هایی رو که میخوای قرار بدی.

    ip1

    ip2

    ip3

    بعد از اینکه برنامه باز شد و IP گرفته شد از طریق indexOf میتونی به راحتی Search کنی که آیا IP که الان باهاش هستی توی لیست وجود داره یا نه

    روش کار کن اگه مشکل داشتی بگو.

    خیلی راحته این مدل چیزی که شما میخوایین.

  8. سلام . به این تالار برنامه نویسی خوش آمدید.

    شما آموزش تصویری Notification رو که در بخش آموزش های تصویری موجوده رو دانلود کنید. توش از Service Module استفاده شده.

    مشکلتون حل میشه.

    برای رفتن به تاپیک آموزش تصویری Notification کلیک کنید

  9. سلام و درود

    تعریف پنل رو توی Sub Globals انجام بدید ( طبق کدهای خودتون مثال میزنم ) :

    Dim pnltest As Panel

    چون روی رخداد sc تعریف کردید که:

    pnltest.Initialize("pnlTest1")

    پس میاییم میگیم:

    Sub pnlTest1_Touch (Action As Int, X As Float, Y As Float)
       Select Action
       Case  Activity.ACTION_DOWN
       pnltest.Color = Colors.Red
       Case  Activity.ACTION_UP
       pnltest.Color = Colors.Blue
       End Select
    End Sub

    رنگ بندی و اتفاقات بعدیش رو دیگه به سلیقه و نظر خودتونه.

    موفق باشید

  10. سلام و درود

    یک ضرب المثلی هست میگه که چرا عاقل کند کاری که باز آید به کنعان غم مخور ؟ :@

    اگه اگه اگه فقط منظورتون اینه که میخواهید مثلا Panel شما به این شکل باشه :

    attachment.php?attachmentid=163&stc=1

    خب میتونید از حاشیه های زیباتری به صورت عکس استفاده کنید توسط طراحی حاشیه توی Photoshop . مثلا اینحوری :

    attachment.php?attachmentid=164&stc=1

    الان این Panel هست ولی من خواصیت Drawable رو به BitmapDrawable تغییر دادم و عکس مورد نظرم رو بهش دادم.

    خیلی هم زیبا تر میشه. با یک عکس 10-15 کیلوبایتی میتونید بهترین حاشیه رو به Panel خودتون بدید. نه فقط Panel ، بلکه بیشتر کنترل ها این ویژگی رو دارن.

    اگه به جز اینه یا منظورم رو متوجه نشدید بگید سورس بزارم. اگه هم من منظورتون رو درست متوجه نشدم بیشتر توضیح بدید.

    موفق باشی

  11. عزیز این رو دیده بودم من . دقیقا اون چیزی هست که شما میخواستید توی تاپیک دیروزتون.

    توش از یک Service Module استفاده شده و کتابخانه WifiDirect که اومده از خواصیت Wifi Manager اون استفاده کرده.

    اتفاقا من و مهران خیلی گشتیم امروز دنبال این کتابخانه ولی هنوز نتونستیم پیدا کینم.

    بدون شک راه های دیگه ای هم داره که توی چند روزه آینده قدم به قدمش رو آموزش خواهیم داد.

    • پسندیدن 1
  12. ممنون دوست عزیز آرمین نه متاسفانه کارم راه نمیفته

    مدیریت محترم سایت اگه این اپ اماده کنید توی کدوم قسمت قرار میدید؟

    به صورت قدم به قدم و تاپیک های جدا سعی میکنم آموزش رو انجام بدم در مورد Wifi و WifiIP . توی آخرین تاپیک ها توی صفحه اصلی سایت مشخص میشن.

    اما در قسمت آموزش های متنی قرار داده میشن.

  13. ممنون از توضیح جامع و کاملتون اما دوست عزیز پس واکی تاکی چطور اینکارو کرده؟

    ندیدم برنامه ایشون رو. شاید از طریق کدنویسی اختصاصی که خودش انجام داده این کار رو انجام داده که بدون شک کار وقت گیر و بسیار زمان بری هست.

    فقط یک راه دیگه وجود داره که از طریق IP هست که ، حدودا مثل b4a bridge.

    سعی میکنم سورس کدی تقریبا مشابه b4a bridge رو براتون آماده کنم.بدون شک به کار خیلی از دوستان دیگه هم میخوره.

  14. سلام و خوش آمد میگم بهتون.

    خب توضیحاتی رو بدم در مورد سوالتون.

    شما 10 نفر دوست کنار همدیگه بشنید و به یک Modem از طریق Wifi متصل بشید. هر بار که جست و جو کنید فقط یک Wifi رو میتونید شناسایی کنید.

    گوشی ها رو که شناسایی نمیکنه مگه اینه :

    کاربر مورد نظر Wifi خودشو برای اشتراک گذاری باز گذاشته باشه که از 100 نفر شاید 1 نفر چنین کاری رو انجام بدن. بر فرض مثال من خط رایتل دارم و 3-4 تا از دوستان من خط همراه اول

    و در جایی هستیم که اینترنت پرسرعت Wifi وجود نداره ! خب من میام Wifi خودم رو Share میکنم تا دوستام بتونن به گوشی من متصل بشن.

    فکر کنم منظور شما اینه که تمام wifi های گوشی که به صورت عادی و معمولی روشن هستند رو شناسایی کنیم(در بازار ممکنه در هر 100 متر 50 کاربر Wifi گوشیشون روشن باشه)

    ولی شما به هیچ کدوم از اونها نمیتونید متصل بشید یا شناساییشون کنید چون فقط استفاده کننده هستند نه Share کننده.

    به صورت معمولی Share کننده ها فقط دستگاه ها و آنتن های Wifi هستند.

  15. سلام.

    من فکر میکنم با تایمر و عکس میشه خیلی کارها رو انجام داد.

    مثلا طبق آموزش تصویری که دادم واسه Button عکس بزاری ، با کلیک کردن روی اون باتن صدا ایجاد بشه ، رنگش عوض بشه

    به نظر من 80% بر میگرده به خلاقیت خود شخص. میتونی از عکس های png که BackGround ندارن هم استفاده کنی واسه بعضی از متن هات به جای Label.

×
×
  • اضافه کردن...